Мое ASP.NET v3.5 веб-приложение бросает следующее исключение, когда пытается открыть соединение с SQL Server 2008 баз данных:Ошибка входа в систему пользователя «NT AUTHORITY IUSR» в ASP.NET и SQL Server 2008
System.Data.SqlClient.SqlException: не удается открыть базу данных "MyDbName" запрашиваемое имя входа. Не удалось войти в систему . Ошибка входа для пользователя 'NT AUTHORITY \ IUSR'.
Дело в том, что я добавил NT AUTHORITY\IUSR
в список логинов сервера и список пользователей базы данных. Для сервера я предоставил пользователю роль Public, а для базы данных я предоставил разрешения db_datareader
.
Я также предоставил то же самое для NT AUTHORITY\NETWORK SERVICE
, который является идентификатором, в котором работает пул приложений.
Веб-приложение размещено IIS7, если это имеет значение. Проблема повторяется, когда DB и IIS находятся на одной и той же физической машине.
Я просто тестирование, чтобы увидеть, если это будет все работать на том же поле - в производстве топологии лучше всего описывается как растягивание. Во всяком случае, вы прибили его - мне пришлось добавить разрешения для machineName $. Спасибо! –
Просто хотел добавить это аналогично, я решил эту проблему, создав разрешения для имени пользователя IUSER, найденного в веб-сайтах IIS 6.0 -> Свойства-> Безопасность каталога -> Изменить (Аутентификация ...), которая была IUSR_MACHINENAME – shawad
. Как вы добавили разрешения для MachineName $ в VS –