2017-07-07 1 views
0

Ich verwende den folgenden Code, um das AAD-Zugriffstoken zu authentifizieren.Wie Authentifizierung AAD-Token von PPE-Umgebung mit OWIN?

 app.UseWindowsAzureActiveDirectoryBearerAuthentication(
      new WindowsAzureActiveDirectoryBearerAuthenticationOptions 
      { 
       Tenant = ConfigSettings.MicrosoftAadTenant, 
       TokenValidationParameters = new TokenValidationParameters 
       { 
        ValidateAudience = false, 
        ValidateIssuer = false 
       } 
      }); 

Der Code funktioniert gut, bis ich ein Token aus PPE-Umgebung erzeugt verwenden geschaltet, das Iss ist "https://sts.windows-ppe.net/ ...". Ich habe die Fehlermeldung unten eingefügt. Weißt du, wie man es repariert?

Microsoft.Owin.Security.OAuth.OAuthBearerAuthenticationMiddleware Error: 0 : Authentication failed System.IdentityModel.Tokens.SecurityTokenSignatureKeyNotFoundException: IDX10500: Signature validation failed. Unable to resolve SecurityKeyIdentifier: 'SecurityKeyIdentifier ( IsReadOnly = False, Count = 2, Clause[0] = X509ThumbprintKeyIdentifierClause(Hash = 0x871BE0E2BDD307841D01C8151AE2717D2DB9F376), Clause[1] = System.IdentityModel.Tokens.NamedKeySecurityKeyIdentifierClause ) ',

Danke,

Antwort

0

Ok, finde ich, warum heraus. Wenn Sie sich den Quellcode von Microsoft Owin unter git repo ansehen, ist die Anmelde-URL fest codiert. Es gibt keine Möglichkeit, es zu konfigurieren. Ich behebe das Problem, indem ich meine eigene Erweiterungsmethode schreibe.

Verwandte Themen