1

Просто любопытно, как лучше всего управлять доступом к базе данных из веб-приложения asp.net. В настоящее время мы вводим имя пользователя и пароль в web.config, но это было недостаточно хорошо для внутренней безопасности (очевидно), поэтому я решил вместо этого использовать пользователя домена Windows, изменив web.config на использование домена Windows, а затем добавление пользователя в идентификатор пула приложений. Все это работает нормально, но что происходит при изменении пароля пользователя домена? Означает ли это, что для всех веб-приложений, которые используют идентификатор этого пользователя в пуле приложений, потребуется также изменить пароль? Это был бы ночной кошмар. У кого-нибудь есть предложения по наилучшему подходу, позволяющие Webapp получать доступ к базе данных без раскрытия пароля и без необходимости обновления паролей во всех веб-папках, если пароль меняется? СпасибоКак управлять паролями для доступа к базе данных с сайта asp.net

ответ

1

Лучшее решение было бы создать отдельный пул приложений, который устанавливается с помощью учетной записи службы, которая имеет полный доступ к базе данных перезапустить веб-приложение после выбора нового пула приложений и использовать интегрированную безопасность ,

Использовать очень сильный (и длительный) пароль и установить учетную запись на пароль не истекает, и пользователь не может изменить пароль.

Это предотвращает использование открытого текста в файлах web.config.

+0

Я уже делаю это. Моя проблема заключается в том, что мы хотим легко управлять паролями для нескольких пулов приложений, не переписывая их в каждый из них после изменения одного пароля. – u84six

0

Я бы рекомендовал использовать SQL Mixed-mode Authentication и использовать учетную запись SQL для вашего приложения. Имя пользователя и пароль в файле web.config и зашифруйте этот раздел конфигурационного файла.

Вот некоторая информация о шифровании конфигурации.

http://msdn.microsoft.com/en-us/library/zhhddkxy(v=vs.100).aspx

+0

Но разве это не вызвало бы такую ​​же проблему? Я предоставляю доступ к пользователю домена на сервере sql, который в настоящее время работает с IIS. Но единственная проблема, с которой я столкнулся, - это управление паролями. Если у меня есть 20 сайтов, которые используют того же пользователя домена, и пароль изменен для пользователя, все ли db-доступ завершился неудачей? То же самое произойдет, если пароль пользователя SQL должен измениться. Затем необходимо обновить все webapp-файлы webapp. Это не то, что я хочу сделать. Должен быть способ управлять паролями, не нарушая доступ к db веб-приложения. – u84six

+0

Когда вы настраиваете приложение для аутентификации определенного пользователя (AD или SQL), и вы меняете пароль, вам нужно будет перенастроить приложение. Я не знаю, есть ли что-нибудь, что вы можете сделать, чтобы этого избежать. –

+0

Я немного удивлен этим. Вы считаете, что MS будет иметь простой инструмент для обновления приложений при изменении пароля. Там должен быть лучший путь. – u84six