У меня есть сайт, работающий на IIS на моем локальном хосте. На этом веб-сайте безопасность каталога установлена только для встроенной проверки подлинности Windows. Он является частью интрасети и должен проходить проверку подлинности с помощью учетных записей нашего домена.
Затем я подключаюсь к SQL Server с интегрированной безопасностью = SSPI в строке подключения.
Это отлично работает с Microsoft Internet Explorer, он автоматически аутентифицирует меня, когда я вошел в домен, и я вижу, что logon_user - это моя учетная запись домена, а строка соединения с SQL Server работает просто отлично.
Однако, когда я вхожу в систему с помощью Firefox, все меняется.
Во-первых, мне предлагается пройти аутентификацию, что нормально и правильно, поскольку Firefox не настроен на доверие локального хоста, достаточного для автоматической отправки учетных данных (и, действительно, я знаю, как ввести это доверие, это не проблема) , Затем я вхожу в систему, что опять хорошо, при условии, что я ввожу данные учетной записи домена, все в порядке. Действительно, один или два отладочных оператора показывают, что logon_user по-прежнему является моей учетной записью домена, и все в порядке.
Однако, когда я подключаюсь к SQL Server (который работает на удаленном сервере, к которому у моей учетной записи домена есть полные привилегии sysadmin), я получаю следующую ошибку:
Microsoft OLE DB Provider for SQL Server (0x80040E4D)
Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
Это указывает на то, что в стеке аутентификации что-то не так, по какой-то причине IIS не работает как аутентифицированная учетная запись, когда я аутентифицируюсь с использованием аутентификации Windows из firefox.
Это также хорошо работает при использовании Google Chrome.
Есть предложения?