Мы переносим сайт IIS / SQL Server с 2008 по 2012 год, и у меня возникла проблема с аутентификацией. Мы используем аутентификацию Windows для аутентификации как DOMAIN\COMPUTER$
, но это не работает, выдавая ошибку:
Не удалось войти в систему для пользователя 'DOMAIN \ COMPUTER $'. Причина: не удалось найти логин, соответствующий указанному имени. [КЛИЕНТ: <локальный компьютер>]
Я проверил, что аккаунт существует, и даже удалил и воссоздал его
create login "DOMAIN\COMPUTER$" from windows
Если я сделаю это снова, я получу ответ:
Сообщение 15025, Уровень 16, Состояние 2, Строка 1
Участник сервера 'DOMAIN \ COMPUTER $' уже существует.
( DOMAIN\COMPUTER
заменяется реальным доменом и именем компьютера)
Таким образом, кажется, что сайт запрашивает SQL Server, но SQL Server не очень внимательно смотрит на свои логины.
Что я пропустил?
И @cha, и @alt имеют правильные подсказки - сообщение об ошибке вводит в заблуждение и
Application Pool Identity
участвует (ну, по крайней мере, в моем случае).Если в пуле приложений вашего приложения IIS используется
Application Pool Identity
учетная запись пользователя, которую нужно добавить в SQL ServerIIS APPPOOL\your_app_pool_name
. Примечание: не используйтеSearch...
кнопку в Свойствах входа в систему, чтобы найти этого пользователя - он найдет его, но заменит его,MACHINE_NAME\your_app_pool_name
который не будет работать - просто введитеIIS APPPOOL\your_app_pool_name
имя для входа.источник
Эта проблема должна решаться по-разному в зависимости от настройки сервера.
SQL и IIS сервер находятся на одной машине.
а. изменить идентификатор пула приложений на
Network Service
б. добавьте NT
AUTHORITY\NETWORK SERVICE
в ваш логин SQL сервераSQL и IIS сервер находятся на разных машинах.
а. добавить учетную запись компьютера,,
DOMAIN\computer-name$
к вашей учетной записи SQL сервера.б. идентификация пула приложений остается
Application Pool Identity
источник
Мне удалось заставить его работать, изменив сайт в IIS для использования
Application Pool Identity
, затем изменив Идентификацию пула приложений наNetwork Service
. Не стесняйтесь комментировать любые вопросы безопасности, которые могут возникнуть.источник
Я получаю ту же ошибку. Ошибка входа в систему: 18456, уровень серьезности: 14, состояние: 5. Отключение CEIP в SQL Server и использование отчетов об ошибках решило проблему для меня.
источник