如何使用 AD SAML 2.0 在 aws cognito 中不使用托管 ui 来获取 jwt 令牌

pra*_*t17 5 authentication adfs saml amazon-web-services amazon-cognito

到目前为止我做了什么?

我通过添加信任关系并设置 Cognito 身份提供商将 Microsoft AD 与 AWS Cognito 集成。在此,我在 Cognito 设置期间设置了应用程序域前缀。通过使用以下 URL,我可以通过登录 AD 登录页面来接收令牌。因此,当我解码此令牌时,我获得了所需的属性和其他信息。

我到底想要什么?

因此,我不希望我的用户被重定向到 AD 登录页面,然后再重定向到应用程序。我只需要一个 REST API,我可以在其中提供 AD 用户凭据,并且该 API 将返回上述包含所有信息的 JWT 令牌。简而言之,我想通过使用 AD 用户凭据来获取 Cognito JWT 令牌。这些用户是 AD 组的一部分,通过使用 ADFS 添加信任关系来链接到 AWS IAM。那么有没有一种方法可以让我不需要使用 Cognito 托管的 UI。相反,我的用户将使用一个 API 并获取凭据。我不知道这个API是什么。

任何帮助将不胜感激。

Nat*_*res 8

我自己也处于同样的困境,但我发现了一个非常有用的问题(带有答案),可能会帮助你。已经有一段时间了,但也许这对于现在遇到同样问题的新人来说会有用。

用于登录 Amazon Cognito 用户池的 REST(或 CLI)API 是什么

我认为您希望在您的认知用户池中启用 ClientCredentials 流。您可以在此处阅读有关此流程的更多信息https://aws.amazon.com/blogs/mobile/understanding-amazon-cognito-user-pool-oauth-2-0-grants/以确保它是您所需要的(oauth流量和赠款是同一回事)。