VPN verbënnt, awer SQL Server refuséiert Windows-Authentifikatioun
VPN-Login funktionéiert, SQL Server refuséiert Windows-Authentifikatioun: vergläicht den Tunnelkont mat dem Token vum Client a liest duerno auth_scheme um Server.
Tunnelen kommen erop, Serveren äntweren op Ping, an den Datebank-Login schléit weider mat engem Authentifikatiounsfehler fehl. Dës Kombinatioun ass heefeg op VPN-Verbindungen an heescht selten, datt den Netzwerk futti ass, well en erreechbare Lauschterer an en akzeptéierte Login zwee verschidde Resultater sinn. D’Identitéit, déi den Gateway zefridde gestallt huet, ass net onbedéngt d’Identitéit, déi de Datebank-Client ubitt. Erauszefannen, wéi ee Kont ukomm ass, ass déi ganz Aufgab.
D’Symptom: erreechbare Server, refuséierte Login
En Timeout seet Iech, datt de Paket ni en Lauschterer erreecht huet. En Authentifikatiounsfehler seet, datt de Lauschterer geäntwert an d’Berechtegungsdaten ofgeleent huet. Dës zwou Noriichten schécken Iech an ënnerschiddlech Teams, an se ze verwiesselen kascht en Dag fir Firewall-Regelen, déi ni de Problem waren.
Wann de Fehler e gescheiterten Login ass, hält op, op Porten ze kucken. Déi reschtlech Fro ass, wéi eng Windows-Identitéit de Client presentéiert huet, ob de Server déi Identitéit akzeptéiert huet, an ob se zu engem Datebank-Benotzer mat Berechtegung opgeléist gouf.
Zwou Identitéiten, een Tunnel
De VPN-Kont authentifizéiert sech um Gateway a geet an de meeschte Beräicherung do op en Enn. De Datebank-Client présentéiert separat en Windows-Token, deen aus dem Prozess geholl gëtt, deen en ausféiert, oder e SQL-Login, wann d’Verbindungszeechen een verlaangt. E gateway-lokale VPN-Benotzer huet keng Bezéiung zu der Domain, déi SQL Server hostt, an den Tunnel schaaft keng.
Eng privat Maschinn un e VPN ugeschloss ze hunn hëlt se och net an d’Domain op. En lokale Kont ëmzebenennen an säi Passwuert un en Domain-Benotzer unzepassen ass keen Opnamprozedur, an et entsteet en Token, deen den Domain-Controller net als dee Benotzer akzeptéiert.
E puer native Windows-Remote-Access-Cliente kënnen d’VPN-Berechtegungsdaten fir Netzwerkressourcen erëmbenotzen, wann hire Profil esou konfiguréiert ass. Dës Verhalen gehéiert zu engem bestëmmten Client a Profil, net zu VPN-Verbindungen am Allgemengen, also verifizéiert se fir de benotzte Client, amplaz se unzehuelen.
Liest de Modus, deen de Client verlaangt huet
D’Verbindungszeechen entscheet, wéi en Authentifikatiounswee de Client hëlt. Integréiert Sécherheet benotzt den Windows-Token; e Paar aus Benotzer a Passwuert wielt en SQL-Login. Dat sinn getrennte Moden an der Serverkonfiguratioun, an nëmmen ee vun hinnen kann fir en bestëmmten Verbindungsversuch aktivéiert sinn.
Server=tcp:sql.lab.example,1433;Database=ops;Integrated Security=SSPI;Encrypt=True;TrustServerCertificate=False;
Op en SQL-Login ze wiesselen, well den Windows-Login gescheitert ass, ass eng Ëmwee, déi d’Identitéitsfro verstoppt, an et brauch meeschtens awer en neien Login a Passwuert. Wann d’Bereäicherung Windows-Authentifikatioun verlaangt, behält de Modus a fléckt den Identitéitswee. En SQL-Login brauch och seng eegen Berechtegungen, also kaaft d’Ëmwee en zweeten Kont fir ze ënnerhalen.
Verifizéiert och, wéi eng Applikatioun sech verbënnt. En Déngscht, deen als Systemkont leeft, eng geplangten Aufgab an en interaktiven Ufro-Fënster kënnen dräi verschidden Token op der selwechter Maschinn presentéieren, an nëmmen déi lescht entsprécht deem, wat de Benotzer gesäit, wann en whoami ausféiert.
Frot de Server, wat en tatsächlech gesinn huet
De Server kann Iech soen, wéi ee Login en opgeléist huet a wéi d’Verbindung sech authentifizéiert huet. Féiert d’Ufro an der Ënnersichter Sessioun aus, well eng separat erfollegräich Verbindung vum Administrateur näischt iwwer de Client beweist, dee scheitert.
SELECT ORIGINAL_LOGIN() AS original_login,
SUSER_SNAME() AS current_context;
SELECT auth_scheme, net_transport
FROM sys.dm_exec_connections
WHERE session_id = @@SPID;
Déi éischt Zeil ënnerscheet den Login, deen d’Sessioun opgemaach huet, vum Sécherheetskontext, dee just elo gëllt, an déi ënnerscheede sech ënner Imitatioun. Déi zweet nennt d’Authentifikatiounsschema, sou datt KERBEROS, NTLM an SQL sichtbar Fakten ginn amplaz Vermutungen. Eng Verbindung, déi NTLM mellt, wou Dir Kerberos erwaart hutt, ass en Numm-Opléisungs- oder SPN-Problem, keen Passwuertproblem.
D’Fehlernummer grenzt et weider an. Status 5 heescht meeschtens, datt den Login-Numm guer net opgeléist gouf, Status 8 heescht meeschtens, datt d’Passwuert net gepasst huet, a Status 11 heescht, datt d’Berechtegungsdaten akzeptéiert goufen, awer den Zougang zum Server gescheitert ass. Frot den Administrateur nom Status amplaz no der ganzer Noriicht, well d’Noriicht eleng bewosst vag ass.
| What you observe | What it suggests |
|---|---|
| Timeout, no listener | Route, firewall or wrong port |
| Login failed, state 5 | Name not resolved in the domain |
| Login failed, state 11 | Authenticated but no server access |
| Connected as NTLM | Target name or SPN mismatch |
Wann d’Identitéit ukommt an Kerberos weider scheitert
Wann de Server déi virgesinn Windows-Identitéit gesäit an déi integreéiert Authentifikatioun weider scheitert, ass den Austausch selwer de Problem. Kerberos brauch den registréierten Déngscht-Haaptnumm fir de SQL-Déngschtkont an e Client, deen den Déngscht mat engem passenden Numm ufro. Iwwer d’IP-Adress ze verbannen kann net mat engem nummbaséierten SPN iwwerenee kommen, an en Alias kann nëmmen passen, wann en och registréiert ass. Kontrolléiert als éischt den Numm, deen de Client getippt huet, well eng Verbindung, déi iwwer den Hostnumm funktionéiert an iwwer IP scheitert, genee dëse Problem beschreift.
Frot den Administrateur, déi registréiert Identitéit an den Déngschtkont ze iwwerpréiwen, amplaz duplizéiert SPNen duerch Ausprobéieren ze schafen. Duplizéiert Registratiounen erzéien intermittéierend Ausfäll, déi méi schwéier ze diagnostizéieren sinn wéi den urspréngleche Problem.
Nodeem d’Authentifikatioun funktionéiert, brauch den Login nach ëmmer en Datebank-Benotzer a Berechtegungen. En erfollegräichen VPN-Login, en erfollegräichen Windows-Login an d’Berechtegung, eng bestëmmte Tabell ze liesen, sinn dräi getrennt Resultater, an all verdéngt seng eege Kontroll, ier den Ticket zougemaach gëtt.