如何在AWS Cognito用户池中将Okta设置为SAML IDP?

Mar*_*tin 6 amazon-web-services single-sign-on okta okta-api aws-cognito

我想使用Okta作为基于SAML 2.0的IDP,AWS Cognito作为服务提供商,使用Cognito用户池来进行联合IDP配置.

我已按照下面列出的AWS网站中提到的所有步骤进行操作 -

1563不提供任何支持或文档- https://support.okta.com/help/answers?id=9062A000000QucAQAS&feedtype=SINGLE_QUESTION_DETAIL&dc=xSAML&criteria=OPENQUESTIONS&.

请注意,我已经尝试过Okta作为IDP,与AWS IAM建立了信任关系,并使用Okta用户登录我的AWS账户.按照Okta提供的详细文档,这可以正常工作.但是,我的需求不同,我想在我的AWS cognito用户池中使用Okta作为SAML IDP.

包含要在两端(即AWS和Okta)完成的配置的任何详细文档都会有所帮助.

Wen*_*olf 6

我确实通过SAML使用Cognito设置了Okta,如下所示:

Okta面:

  • 单一登录URL将是您的Cognito SAML端点,其形式为:( https://<yourDomainPrefix>.auth.<region>.amazoncognito.com/saml2/idpresponse 请参见用户池下的URL的第一部分,“应用程序集成”->“域名”)。
  • 听众URI(SP实体ID)将成为您的Cognito用户池的URN :(urn:amazon:cognito:sp:<yourUserPoolID> 请参阅用户池“常规设置”以获取该池ID)。
  • 在属性语句中,您想添加在池中设置为强制性的任何属性,在我的情况下是电子邮件。

Cognito端-用户池:

  • 联盟->身份提供者:选择SAML并从Okta导入metadata.xml。
  • 在“应用程序集成”下转到您的应用程序客户端设置,并启用新创建的IDP

认知端-身份池:

  • 在身份验证提供程序的“ SAML”选项卡下,您将能够选中Okta提供程序复选框,因为您提到您已经将其作为IAM下的受信任提供程序。

应该就是这样。有帮助的资源:https : //docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-saml-idp.html

编辑:似乎需要对“听众URI /听众限制Okta”设置进行澄清。正如下面提到的朱利安(Julien)采用urn:amazon:cognito:sp:region_randomid的形式(即urn:amazon:cognito:sp:eu-west-1_SdsSdwSD3e),您无需添加自己的区域。