【问题标题】:How to get AD groups returned from AWS Cognito response?如何获取从 AWS Cognito 响应返回的 AD 组?
【发布时间】:2020-11-26 01:07:22
【问题描述】:

我正在使用绑定到我的公司广告组的第三方提供商 PingIdentity。 PingIdentity 已配置为发送与正在登录的用户关联的 AD 组。在 AWS 端,我使用 Cognito UserPools 并将 PingIdentity 添加为 oauth 提供程序。

从身份验证的角度来看,一切正常,问题出在 - 我正在尝试获取对应的 AD 组,但是当我点击 Cognito 的端点时:

/oauth2/令牌 oauth2/用户信息

我没有看到 PingIndentity 发回的任何 AD 组。我还检查了用户的 id_token,当我解析它时它没有包含在 JWT 令牌中。

Cognito 似乎在完成身份验证,然后每次我调用端点时都会生成它自己的 JWT 令牌和 userinfo 响应。

在使用 Cognito 时有没有办法通过 AD 组?

【问题讨论】:

    标签: oauth-2.0 active-directory amazon-cognito pingfederate aws-userpools


    【解决方案1】:

    我认为 Cognito 不可能,它也不支持访问令牌中的自定义声明。

    一种选择是按照以下方式进行,这就是我将如何解决您的问题:

    • 开发一个小型用户服务,可以根据用户 ID 或电子邮件返回 AD 组
    • 将对用户服务的调用集成到 API 的令牌验证中
    • 使用相同令牌为后续调用缓存结果

    更多信息

    这种模式的主要好处是可扩展性,而不依赖于特殊的授权服务器功能。它还使令牌保持小而机密。

    【讨论】:

      猜你喜欢
      • 2016-08-15
      • 2021-11-19
      • 2020-07-07
      • 2017-05-27
      • 2019-03-23
      • 2019-09-13
      • 2019-09-29
      • 2019-05-20
      • 2018-09-18
      相关资源
      最近更新 更多