2017-09-12 6 views
1

J'ai donc commencé à pratiquer et à utiliser Identity Server 4, mon but est d'avoir un serveur d'authentification et d'autorisation pour toutes les applications de mon organisation. Je suis arrivé au point où je peux me connecter correctement à mon serveur d'identité à partir d'une troisième application et obtenir mon access_token et cela fonctionne bien.Jeton d'accès Identity Server 4 avec informations utilisateur

La deuxième étape est d'obtenir mon userinfo dans mon access_token mais quand je décodent je reçois ceci:

{ 
    "nbf": 1505250392, 
    "exp": 1505253992, 
    "iss": "http://localhost:5000", 
    "aud": [ 
    "http://localhost:5000/resources", 
    "SecretAPIEndpoints" 
    ], 
    "client_id": "SecretClient", 
    "sub": "ebf3fcad-6ab3-4bcd-88ce-0c5794ebdffa", 
    "auth_time": 1505250391, 
    "idp": "local", 
    "scope": [ 
    "openid", 
    "SecretAPIEndpoints" 
    ], 
    "amr": [ 
    "pwd" 
    ] 
} 

Donc, si j'utilise ce jeton je peux faire mes points d'extrémité fonctionnent correctement, mais je veux aller un peu plus loin et obtenir mon SPA pour montrer mon nom d'utilisateur et nom de famille ainsi que leur e-mail et leurs rôles.

Je n'ai pas trouvé de documentation ou d'exemples pour que cela se produise, donc toute aide serait grandement appréciée.

Répondre

1

Si vous souhaitez consommer des données d'identité dans une application client JS, demandez un id_token en plus d'un jeton d'accès.

https://openid.net/specs/openid-connect-core-1_0.html#ImplicitFlowAuth

+0

Les erreurs d'URL sur moi dans Firefox en raison de problèmes SSL. En outre, il pourrait aider OP à lier à la pièce nécessaire de documents IdS4 ([celui-ci] (http://docs.identityserver.io/en/release/endpoints/authorize.html) je pense?). – Jeroen