Для управления веб-приложением ASP.NET, использующим проверку подлинности с помощью форм, я пытаюсь настроить «Средство администрирования веб-сайта», входящее в состав ASP.NET, для нашей рабочей среды, используя шаги, аналогичные приведенным ниже.перечисленные здесь .Я знаю, что это не рекомендуется и не поддерживается, но не требует разработки каких-либо инструментов администратора и достаточно подходит для наших целей.
Теперь все работает нормально, когда я использую WSAT из Visual Studio,Но когда я настроил его как приложение на IIS, оно не соответствует настройкам олицетворения, которые я настроил.Когда он подключается к базе данных, поддерживающей целевое приложение (Integrated Security, SQL Server 2008), он просто использует вместо этого стандартную учетную запись пользователя ASP.NET.
В браузере загружается сам сайт WSAT, но когда я перехожу на страницу «Безопасность», я получаю сообщение об ошибке:
Login failed for user '[ASP.NET user account]'
Этот пользователь не имеет прав доступа к БД, поэтому понятно, почему не удается войти в БД.Что мне непонятно, так это то, почему в первую очередь используется учетная запись пользователя ASP.NET.
Олицетворение ASP.NET было настроено как для WSAT, так и для целевого приложения (оба являются «Приложения»).на том же веб-сайте в IIS), но, очевидно, это не соблюдается при подключении WSAT к БД.
Как исправить эту проблему?
Я могу опубликовать соответствующие разделы web.config
файлов, если необходимо.
РЕДАКТИРОВАТЬ: Очевидно, что я могу обойти эту проблему, разрешив пользователя ASP.NET в БД, или создав пользовательский инструмент WSAT или используя один, созданный другими (например, этот ), но я бы предпочел решить эту проблему, исправив проблему олицетворения.