Freigeben über


Fehlerbehebung bei der Windows-Authentifizierung für Microsoft Entra-Prinzipale auf Azure SQL Managed Instance

Dieser Artikel enthält Schritte zur Problembehandlung für die Verwendung bei der Implementierung von Windows-Authentifizierungsprinzipale in Microsoft Entra ID (früher Azure Active Directory).

Hinweis

Microsoft Entra ID war zuvor als Azure Active Directory (Azure AD) bekannt.

Überprüfen, ob Tickets zwischengespeichert werden

Verwenden Sie den Befehl klist, um eine Liste der aktuell zwischengespeicherten Kerberos-Tickets anzuzeigen.

Der Befehl klist get krbtgt sollte ein Ticket aus dem lokalen Active Directory-Bereich zurückgeben.

klist get krbtgt/kerberos.microsoftonline.com

Mit dem Befehl klist get MSSQLSvc sollte ein Ticket aus dem Bereich kerberos.microsoftonline.com mit einem Dienstprinzipalnamen (Service Principal Name, SPN) an MSSQLSvc/<miname>.<dnszone>.database.windows.net:1433 zurückgegeben werden.

klist get MSSQLSvc/<miname>.<dnszone>.database.windows.net:1433

Im Folgenden finden Sie einige bekannte Fehlercodes:

  • 0x6fb: SQL-SPN nicht gefunden: Überprüfen Sie, ob Sie einen gültigen SPN eingegeben haben. Wenn Sie den eingehenden vertrauensbasierten Authentifizierungsflow implementiert haben, wiederholen Sie die Schritte zum Erstellen und Konfigurieren des vertrauenswürdigen Microsoft Entra Kerberos-Domänenobjekts, um sicherzustellen, dass Sie alle Konfigurationsschritte ausgeführt haben.

  • 0x51f: Dieser Fehler ist wahrscheinlich auf einen Konflikt mit dem Fiddler-Tool zurückzuführen. Gehen Sie folgendermaßen vor, um das Problem zu entschärfen:

    1. Ausführen von netsh winhttp reset autoproxy
    2. Ausführen von netsh winhttp reset proxy
    3. Suchen Sie in der Windows-Registrierung Computer\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\iphlpsvc\Parameters\ProxyMgr, und löschen Sie alle Untereinträge, die über eine Konfiguration mit dem Port :8888 verfügt.
    4. Starten Sie den Computer neu, und versuchen Sie es erneut mit der Windows-Authentifizierung.
  • 0x52f: Gibt an, dass Benutzernamen und Authentifizierungsinformationen, auf die verwiesen wird, zwar gültig sind, aber dass eine Einschränkung des Benutzerkontos eine erfolgreiche Authentifizierung verhindert hat. Dies kann passieren, wenn Sie eine Microsoft Entra-Richtlinie für bedingten Zugriff konfiguriert haben. Um das Problem zu beheben, müssen Sie die Azure SQL Managed Instance-Dienstprinzipalanwendung (mit dem Namen <instance name> principal) in den Regeln für bedingten Zugriff ausschließen.

Untersuchen von Fehlern im Nachrichtenfluss

Verwenden Sie Wireshark oder ein Tool zur Analyse des Netzwerkdatenverkehrs Ihrer Wahl, um den Datenverkehr zwischen dem Client und dem lokalen Kerberos-Schlüsselverteilungscenter (KDC) zu überwachen.

Bei Verwendung von Wireshark wird Folgendes erwartet:

  • AS-REQ: Client => lokales KDC => gibt lokales TGT zurück
  • TGS-REQ: Client => lokales KDC => gibt Verweis auf kerberos.microsoftonline.com zurück

Nächste Schritte

Erfahren Sie mehr über das Implementieren der Windows-Authentifizierung für Microsoft Entra-Prinzipale in Azure SQL Managed Instance: