Czy to brzmi jak twój scenariusz?
- Aplikacja internetowa IIS zbudowana na komputerze lokalnym
- Aplikacja internetowa korzysta z uwierzytelniania systemu Windows
- Aplikacja internetowa komunikuje się z bazą danych również na komputerze lokalnym
- Użytkownicy aplikacji internetowych mają również ważne loginy do bazy danych
- Poświadczenia użytkowników aplikacji internetowych są przekazywane do bazy danych przez zaufane połączenie
Wszystko działa świetnie. Następnie przenosisz go do innego środowiska, w którym baza danych i IIS nie znajdują się już na tym samym serwerze, a następnie nie możesz zmusić bazy danych do rozpoznania poświadczeń przekazywanych przez IIS?
Jeśli tak, to witaj w moim piekle kilka miesięcy temu. Problem polega na tym, że gdy te dwa procesy nie znajdują się na tym samym pudełku, przestają sobie ufać. Uprawnienia administratora sieci są wymagane, aby oba procesy ufały sobie nawzajem w granicach serwera. Niestety nie pisałem o tym na blogu, ale ogólne kroki były
- oznacz konto usługi IIS jako godne zaufania (ustawienie Active Directory)
- ustaw główną nazwę usługi (SPN) na nazwę netbios lub FQDN
- coś musiało być ustawione na obu polach, aby wskazać, że mogą sobie ufać
Przepraszam za niejasne wspomnienie, a ponieważ to nie ja miałam uprawnienia do naprawienia czegokolwiek, mogłem tylko obserwować, jak klikają przyciski. Artykuł początkowy na temat Jak połączyć się z SQL Server przy użyciu uwierzytelniania Windows zaprowadziło nas dość daleko na tor.