Ich versuche, eine Identity-Provider-Anwendung mit IdentityServer4 zu erstellen; Momentan verwende ich den "Resource Owner Password Credentials" -Fluss und es gibt access_token und refresh_token vom Token-Endpunkt zurück.Wie ID_Token zusammen mit Access_Token von IdentityServer4 über "Passwort" Grant_Type?
Codeschnipsel für TokenEndpoint von Client-
var tokenClient = new TokenClient(<TokenEndpoint>, <ClientId>, <ClientSecret>);
var tokenResponse = await tokenClient.RequestResourceOwnerPasswordAsync(<UserName>, <password>, <Scopes>);
Meine Frage zu stellen ist, wie zusammen mit „access_token“ und „refresh_token“ „id_token“ zu erhalten, indem die gleichen „Ressourcen Owner Passwort Credentials“ Fluss mit ?
Dank @Shaun. Gibt es eine andere Möglichkeit, um access_token und id_token vom Token-Endpunkt zu bekommen? –
@ codeninja.sj Ja. Sie können einen der OpenID Connect-Flüsse verwenden. In Ihrem Fall scheint der Autorisierungscode der beste Kandidat zu sein. Wenn Sie eine Webbrowser-basierte Anwendung erstellen, möchten Sie jedoch den Implicit Flow. –
Authorization Code Flow akzeptiert nur "Benutzername" und "Passwort", aber nicht "client_id" und "client_secret"; "Impliziter Codefluss" akzeptiert "client_id" und "client_secret", aber nicht "username" und "password". Aber ich muss alle diese Parameter übergeben, um Token zu bekommen. Gibt es einen anderen besseren Weg, dies zu erreichen? –