2

所以我开始练习和使用 Identity Server 4,我的目标是为我组织内的所有应用程序拥有一个身份验证和授权服务器。我已经到了可以从第三个应用程序正确登录到我的身份服务器并获取我的access_token的地步,它运行良好。

第二步是在我的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 显示我的用户名和姓,以及他们的电子邮件和角色。

我还没有找到实现这一点的文档或示例,因此将不胜感激任何帮助。

4

1 回答 1

1

如果您想在基于 JS 的客户端应用程序中使用身份数据,除了访问令牌之外,还需要一个 id_token。

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

于 2017-09-13T05:02:05.910 回答