Здравствуйте, vmpire, Вы писали:
V>Здравствуйте, hstas, Вы писали:
H>>Имею следующую архитектуру.
H>>На одном и том же IIS 6.0 (запущен от доменной учетки, входящей в локальную группу IIS_WPG) развернуты
H>>1. Тонкий клиент (asp.net)
H>>2. WCF сервис который хостится на этом IIS.
H>>На другой машине крутится MS SQL Server 2000 (работает от локальной учетной записи).
H>>делегирование настраивал по вот этому мануалу How to use Kerberos authentication in SQL Server
H>>В итоге получил половинчатый результат — если с клиента подключатся к SQL серверу — то подключение идет под доменной учеткой пользователя.
V>Брацзер при этом запущен на том же компьютере, что и сервис?
V>Если нет — попробуйте запустить его с того же компьютера, будет ли отличаться результат? То есть, чтобы браузер, asp.net и WCF сервис были на одной машине, а SQL — на другой.
H>>А вот если с клиента дернуть функцию у WCF сервиса, которая тоже осуществляет такое же подключение — то получаю Login failed, т.к. подключение идет под учеткой IIS-а.
H>>Имперсонация включена и на клиенте и на WCF сервисе (проверял через ServiceSecurityContext.Current.WindowsIdentity.Name).
V>Как именно она включена?
Результат одинаков, и в случае если браузер запущен на той же машине где крутится IIS, и в случае если на другой тачке.
Имперсонация включена через web.config
<identity impersonate="true"/>
<authentication mode="Windows"/>
<authorization>
<deny users="?"/>
<allow users="*"/>
</authorization>
Соответственно, в настройках виртуальных каталогов, отключен анонимный доступ, и включена Виндовс аутентификация.