所以我开始练习和使用Identity Server 4,我的目标是为组织内的所有应用程序提供身份验证和授权服务器。我已经到了可以从第三个应用程序正确登录到我的身份服务器并获取 access_token 并且它运行良好的地步。
第二步是将我的userinfo放在我的 access_token 中,但当我解码时,我得到了这个:
{
"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"
]
}
因此,如果我使用此令牌,我可以使我的端点正常工作,但我想更进一步,让我的SPA显示我的用户名字和姓氏,以及他们的电子邮件和角色。
我没有找到实现这一目标的文档或示例,因此非常感谢任何帮助。
答案 0 :(得分:1)
如果您想在基于JS的客户端应用程序中使用身份数据,除了访问令牌外还要求id_token。
https://openid.net/specs/openid-connect-core-1_0.html#ImplicitFlowAuth