Соединение SSPI в веб-службе.Net 2.0

Я пытаюсь протестировать веб-сервис.Net 2.0, созданный в C#. Один из наших серверов работает под управлением Windows 2000 и в настоящее время может поддерживать только.Net 2.0 . Я могу проверить его локально на моей машине, и он работает нормально, но когда я перемещаю его на целевой сервер для производства, он выдает ошибку.

Я хочу, чтобы он использовал аутентификацию Windows, и он был определен как таковой в файле web.config.

Я получаю следующую ошибку:

System.Data.SqlClient.SqlException: сбой входа для пользователя ''. Пользователь не связан с доверенным соединением SQL Server.

Это происходит, когда я пытаюсь протестировать этот веб-сервис на целевом сервере (работающем локально на этом сервере).

Как я могу связать имя пользователя активного каталога с сервером / местоположением, на котором работает веб-служба (я думаю, это то, что мне нужно сделать?)

Этот сервер в настоящее время может подключаться к MSSQL 2005 через классический ASP и ColdFusion.

2 ответа

Решение

Я полагаю, что вы настроили пользователя для веб-сайта (или службы) в пуле приложений, в котором размещен сайт.

Откройте compmgmt.msc и перейдите в раздел Службы и приложения -> Информационные службы Интернета (IIS)

Вы можете добавить новый пул приложений здесь, который имеет личность. Затем вы можете связать свой сайт веб-службы с пулом приложений, щелкнув правой кнопкой мыши свой сайт -> Домашний каталог и выбрав пул приложений внизу.

Могут быть и другие вещи, которые я забыл, но я думаю, что должен это сделать.

Если вы размещаете хостинг в IIS, вам нужно установить идентификатор пула приложений, в котором запущено веб-приложение. Обратите внимание, что выбранному пользователю необходим доступ для входа в систему в качестве службы и некоторые другие вещи. Скорее всего, вы получите "500 Server Unavailable", если пользователь даже ненадлежащим образом настроен, поэтому действуйте осторожно. Также обратите внимание, что вам нужно полностью переработать пул приложений, чтобы повторить попытку!

(редактировать) - нашел мой блокнот;-p

  • Добавьте учетную запись в группу политик "Вход в систему как служба" (Локальная политика безопасности (Local Security Settings) -> Назначение прав пользователя)
  • Добавьте учетную запись в группу пользователей "IIS_WPG" (Управление компьютером -> Локальные пользователи и группы)
  • Предоставьте учетной записи "Чтение и выполнение", "Список содержимого папки" и "Чтение" разрешений для структуры файла (Explorer -> Properties)
  • Либо создайте новый пул приложений, либо обновите учетную запись пользователя существующего пула (Internet Information Services -> Application Pools)
  • Установите пул приложений для сайта / приложения (Информационные службы Интернета -> Веб-сайты)
Другие вопросы по тегам