В моем веб-приложении ASP.NET v3.5 возникает следующее исключение, когда он пытается открыть соединение с базой данных SQL Server 2008:
System.Data.SqlClient.SqlException: Не удается открыть базу данных "MyDbName" запрошенный логином. Вход не смогли. Ошибка входа для пользователя NT AUTHORITY\IUSR".
Дело в том, что я добавил NT AUTHORITY\IUSR
в список серверов для входа в систему и список пользователей в базе данных. Для сервера я предоставил пользователю роль Public, а для базы данных я предоставил разрешения db_datareader
.
Я также предоставил то же самое для NT AUTHORITY\NETWORK SERVICE
, который является идентификатором, с которым работает пул приложений.
Веб-приложение размещено в IIS7, если это имеет значение. Проблема повторяется, когда DB и IIS находятся на одной и той же физической машине.