【问题标题】:Using access token to get additional user info from cognito?使用访问令牌从 cognito 获取其他用户信息?
【发布时间】:2020-08-21 11:35:16
【问题描述】:

我已经使用 JWT 和颁发者 URL 在我的 Spring Boot 应用程序中集成了 OAuth 2.0 资源服务器,如下所述:https://docs.spring.io/spring-security/site/docs/current/reference/html5/#oauth2resourceserver 我正在与 AWS Cognito 服务集成,一切正常,但是我缺少我想要的信息。

我目前从 React 前端接收访问令牌,其中不包含任何用户自定义属性,仅包含组。正如此处的文档所述:https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-tokens-with-identity-providers.html

有没有办法通过使用访问令牌、回调或 Cognito 的东西来获取自定义属性?

或者,我可以直接接收 ID 令牌,但是在浏览之后这似乎不是最佳做法?我对实施 OAuth 2.0 还很陌生,所以我不确定所有的利弊。

【问题讨论】:

    标签: spring spring-boot oauth-2.0 jwt amazon-cognito


    【解决方案1】:

    /oauth2/userInfo 端点将为您提供有关经过身份验证的用户的信息。

    https://docs.aws.amazon.com/cognito/latest/developerguide/userinfo-endpoint.html

    【讨论】:

    • 我在弄清楚“自定义域”是什么时遇到了问题,但似乎我可以随意添加它。明天我会试一试,如果可行,将答案标记为已接受。感谢您证实我的怀疑。
    • 我们应该在我们的应用程序中调用https://<your-user-pool-domain>/oauth2/userInfo 作为异步调用吗?我以为我们可以使用SecurityContextHolder.getContext() 来获取用户信息,但上下文不显示用户的电子邮件、名字等。
    猜你喜欢
    • 2019-06-06
    • 1970-01-01
    • 2019-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-27
    • 2021-12-23
    • 2016-05-05
    相关资源
    最近更新 更多