AWS cognitos - 联合身份

时间:2018-04-25 23:24:00

标签: amazon-web-services

我是AWS新手并了解Cognito - Federated Identities。

我的项目要求我需要针对Active Directory(SAML身份验证提供程序)对用户进行身份验证,然后使用Cognito提供访问令牌。此要求如外部提供商Authflow>下的https://docs.aws.amazon.com/cognito/latest/developerguide/authentication-flow.html中所述>增强(简化)Authflow。

所以基本上遵循以下步骤: -

  • 登录AD并获取Id / auth令牌
  • 将此令牌传递给Cognito,后者在内部验证AD(SAML提供程序)并发出访问令牌(JWT令牌)
  • 用户/客户使用上述令牌访问AWS资源。

这是我的问题: -

可以按照以下步骤完成吗?

  • 用户/客户端将用户名和密码传递给Cognito。
  • Cognito使用AD对凭据进行身份验证并生成访问令牌
  • 用户/客户使用上述令牌访问AWS资源。

提前致谢。

1 个答案:

答案 0 :(得分:0)

如果您使用SAML连接Cognito Federated Identities,您提及的流程会略有不同。

  1. 用户想要登录,他/她会被您的应用程序重定向到O365域名登录页面。
  2. 一旦获得凭据,它将使用令牌重定向回定义的应用程序URL。
  3. 将该令牌传递给Cognito Federated身份并获取可用于访问AWS资源的AWS访问令牌。
  4. 注意:如果您使用与Cognito联合身份池连接的Cognito Userpool,如果使用SAML将Userpool连接到AD,则可以省去手动处理第一步。它还将提供具有托管UI功能的登录UI。但是,如果您计划使用Google,Facebook和自我注册等多种身份验证机制,这种方法会增加50以上免费等级的月活跃联盟用户的成本,并且更适合。