gpt4 book ai didi

aws-api-gateway - 如何使用启用的身份提供程序进行身份验证

转载 作者:行者123 更新时间:2023-12-04 07:16:42 24 4
gpt4 key购买 nike

我正在寻找有关如何扩展现有的Cognito身份验证过程以包括其他“启用的身份提供程序”的文档。

目前,我们执行以下操作
var userPool = new CognitoUserPool(poolId, clientId, provider);
var user = new CognitoUser(username, clientId, userPool, provider);
var context = await user.StartWithSrpAuthAsync(new InitiateSrpAuthRequest { Password = string.IsNullOrEmpty(temppassword) ? password : temppassword });

如果生成的context.AuthenticationResult不为null,那么我们就开始比赛了,我可以在随后的对AWS API Gateway端点的调用中将context.AuthenticationResult.IdToken用作OAuthBearerToken,该调用由相同的Cognito用户池保护。

一切正常,但现在我们尝试启用其他身份提供程序(首先从Auth0开始),而现在我对于如何获取API网关将从Cognito识别的IdToken茫然不知所措已启用的身份提供者之一。

最佳答案

我尚未使用AWS用户池。但是我浏览了一些文档,我相信这些文档可以为您解决问题。

问:一切正常,但是现在我们尝试启用其他身份提供程序(首先从Auth0开始)

A:

首先,Common Amazon Cognito Scenarios重点介绍了如何使用AWS coginito的不同场景。我希望您仔细阅读并理解它们。

在那里您可以找到Authenticate with a User Pool

Your app users can sign in either directly through a user pool, or federate through a third-party identity provider (IdP).



另外,如果您访问 Amazon Cognito User Pools,您会看到它们突出显示了相同的内容,

Social sign-in with Facebook, Google, and Login with Amazon, as well as sign-in with SAML identity providers from your user pool.



现在,您需要为联盟配置OpenID Connect提供程序(如您所说的Auth0)。

根据文档,可以为各种第三方登录配置用户池。这在 Adding User Pool Sign-in Through a Third Party中突出显示。

对于与OpenID Connect相关的配置,可以通过 Adding OIDC Identity Providers to a User Pool部分找到文档。最后,可以在 OIDC User Pool IdP Authentication Flow中找到流程及其背后的内容。

问:我现在不知道如何获取API网关可以从Cognito识别的IdToken。

答:

关于 token ,在此流程中,AWS用户池充当依赖方。因此,OpenID Connect提供程序(例如:OAuth0)向AWS发行 token 。获取并验证 token 后,您的应用程序将从AWS接收标准 token ,就像您通过SRP身份验证获得的一样。突出显示如下,

With the built-in hosted web UI, Amazon Cognito provides token handling and management for all authenticated users, so your backend systems can standardize on one set of user pool tokens.



不幸的是,我不确定代码示例。

希望这对您有所帮助。

关于aws-api-gateway - 如何使用启用的身份提供程序进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50936144/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com