Zum Inhalt springen
ecdsa.com
Microsoft.IdentityModel.Tokens (.NET).NET

Fehlermeldung

IDX10205: Issuer validation failed. Issuer: 'https://sts.windows.net/

Auch ausgegeben als

  • IDX10205: Issuer validation failed.
  • Bearer error="invalid_token", error_description="The issuer 'https://sts.windows.net/00000000-0000-0000-0000-000000000000/' is invalid"

Danach folgt „Did not match: validationParameters.ValidIssuer: '…' or validationParameters.ValidIssuers: '…' or validationParameters.ConfigurationManager.CurrentConfiguration.Issuer: '…'“. ASP.NET Core sendet `error_description="The issuer '…' is invalid"`.

Microsoft.IdentityModel.Tokens (.NET) — SecurityTokenInvalidIssuerException

Was der Fehler bedeutet

Der Claim `iss` des Tokens stimmt weder mit `ValidIssuer` noch mit einem Eintrag von `ValidIssuers` noch mit dem Aussteller aus der heruntergeladenen OpenID-Konfiguration überein. Die Meldung gibt den Aussteller des Tokens und jeden Wert aus, mit dem er verglichen wurde. In Microsoft Entra ID ist der Lehrbuchfall ein v1.0-Token (`https://sts.windows.net/<tenant>/`), das gegen den v2.0-Aussteller (`https://login.microsoftonline.com/<tenant>/v2.0`) geprüft wird, oder umgekehrt.

Warum der Fehler auftritt

So behebst du den Fehler

  1. 1.

    Token-Version an der Quelle korrigieren

    Setzt du `requestedAccessTokenVersion` im Manifest der API auf 2, stellt Entra ID v2.0-Tokens mit dem Aussteller `login.microsoftonline.com/…/v2.0` aus.

    json
    // App registration manifest of the API: issue v2.0 access tokens
    {
      "api": { "requestedAccessTokenVersion": 2 }
    }
  2. 2.

    Während einer Migration beide Aussteller akzeptieren

    Trage beide Formen des Ausstellers deines eigenen Mandanten ein – akzeptiere niemals beliebige Aussteller, nur damit der Fehler verschwindet.

    csharp
    options.TokenValidationParameters = new TokenValidationParameters
    {
        ValidIssuers =
        [
            $"https://login.microsoftonline.com/{tenantId}/v2.0",
            $"https://sts.windows.net/{tenantId}/", // only while v1.0 tokens are still in circulation
        ],
    };

Verwandte Fehler

Gesamte Signaturfehler-Datenbank durchsuchen