fragen stichworte

Warum schlägt die Kerberos-Sicherheit für unseren ADFS-Proxyserver fehl?

Wir haben einen WCF-Dienst, der Anrufer über Active Directory mithilfe von AD FS 2.0 authentifiziert. Dies funktioniert intern einwandfrei. Nun wollen wir es der Außenwelt zugänglich machen. Deshalb hat unser Serverteam in der DMZ einen Server für den Dienst und einen AD FS-Proxyserver eingerichtet.

Wenn der WCF-Dienst aufgerufen wird, wird die folgende Ausnahme angezeigt:

System.ServiceModel.Security.SecurityNegotiationException: SOAP security negotiation with 'https://adfs-dev.example.com/adfs/services/trust/2005/kerberosmixed' for target 'https://adfs-dev.example.com/adfs/services/trust/2005/kerberosmixed' failed. See inner exception for more details.`

---> System.IdentityModel.Tokens.SecurityTokenValidationException: The NetworkCredentials provided were unable to create a Kerberos credential, see inner exception for details.

---> System.IdentityModel.Tokens.SecurityTokenException: InitializeSecurityContent failed. Ensure the service principal name is correct.

--> System.ComponentModel.Win32Exception: The specified target is unknown or unreachable.

  • Der interne AD FS-Server ist ein einzelner Server, der als Farm gegenüber Standalone konfiguriert ist. Der AD FS-Dienst wird unter einem Dienstkonto ausgeführt.
  • Der Proxy-AD FS-Server ist ein einzelner Server, der als eigenständiger Server konfiguriert ist, und der AD FS-Dienst wird als Netzwerkdienst ausgeführt.
  • Ein Host-Dateieintrag auf dem App-Server in der DMZ verweist den AD FS-Dienstnamen auf die IP des Proxyservers.
  • Die Firewall ermöglicht den SSL-Datenverkehr an Port 443 vom Proxy zum internen AD FS-Server.
  • Der SPN HOST/adfs-dev.example.com ist für das Dienstkonto registriert.

Was könnte ich vermissen?

antworten

'https://adfs-dev.example.com/adfs/services/trust/2005/kerberosmixed' ist nicht als Endpunkt auf einem Proxy verfügbar. Bitte wählen Sie einen verfügbaren Endpunkt aus.