Безопасность данных в ASP.Net с SQL Server - PullRequest
4 голосов
/ 01 июня 2011

Я хочу избежать ввода имени пользователя и пароля в строку подключения в целях безопасности, поэтому я использую «Persist Security Info = true; Integrated Security = SSPI».Когда база данных и веб-сайт находятся на одном и том же сервере, я могу заставить это работать, назначив пользователю имя_машины \ aspnet, то, что он работает с nt полномочия \ локальной службыНо когда веб-сайт и база данных находятся на разных машинах, методология установки этого на SQL Server отличается.Я не знаю как это сделать.Кто-нибудь может мне помочь?

Ответы [ 3 ]

3 голосов
/ 01 июня 2011

Создайте новый пул приложений в консоли управления IIS, задайте для его учетной записи учетную запись домена, которую вы хотите использовать для подключения к серверу, и настройте свое приложение для использования этого пула приложений.Настройте проверку подлинности Windows в строке подключения.

С уважением

Piotr

2 голосов
/ 01 июня 2011

Предполагая, что ваш пул приложений сервера IIS работает как NETWORK SERVICE, на вашем SQL Server создайте имя входа для DOMAIN / MACHINE $ и предоставьте доступ к объектам безопасности.Обязательно добавьте знак доллара.

1 голос
/ 01 июня 2011

Я дал следующий ответ на другой вопрос Веб-сервис с базой данных: SqlException .Я верю, что это может помочь и вам.Эти шаги предназначены для IIS 7.5 и ASP.NET 4.0, но основная концепция одинакова и для других версий.

Если в вашей среде настроен домен Active Directory, я бы предложил следующее:

  1. Создайте учетную запись домена, скажем MyDomain\webappuser, где MyDomain будет доменом активного каталога, а webappuser будет учетной записью Windows в этом домене.В SQL предоставьте этому новому пользователю учетной записи домена соответствующие разрешения для доступа к базе данных.

  2. В Internet Information Services (IIS) Manager измените пул приложений для запуска под этой учетной записью службы.Если вы используете IIS 7.5, для этого могут быть выполнены следующие шаги:

  3. В IIS, разверните узел <server name> и нажмите Application Pools.

  4. Лучше создать новый Application Pool, чтобы не нарушать функциональность других приложений, которые могут использовать пул приложений ASP.NET v4.0.

  5. Создайте новый пул приложений (скажем, CustomAppPool), аналогичный пулу приложений ASP.NET v4.0, за исключением того, что новый пул приложений будет использовать Identity только что созданной учетной записи домена MyDomain\webappuserвместо обычного ApplicationPoolIdentity .

  6. В опции Advanced Settings виртуального каталога / сайта, на котором развернут ваш веб-сервис, измените приложение Свойство Pool для использования вновь созданного пула приложений CustomAppPool.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...