gpt4 book ai didi

amazon-web-services - 使用确认 URL 确认 amazon cognito 后如何重定向?

转载 作者:行者123 更新时间:2023-12-03 12:14:26 25 4
gpt4 key购买 nike

我想在 amazon cognito 中的用户确认后重定向到特定的 url。

当用户注册时,他将收到带有验证链接的确认邮件,如下所示
https://<>.auth.us-west-2.amazoncognito.com/confirmUser?client_id=<<>>&user_name=<<>>&confirmation_code=<<>>

如果用户点击上面的链接,它将重定向到确认页面。

用户确认完成后,页面应重定向到我的应用程序。

请给我一些想法来解决这个问题。

最佳答案

目前,无法使用电子邮件中的验证链接完成此重定向。不久前,我尝试将 redirect_uri 添加到验证 URL,但它们不起作用。

解决方法

  • 在 Api 网关中创建一个 API,它接受这 3 个参数和一个额外的 redirect_uri 参数。在后端 lambda 中,使用参数向实际链接发出 GET 请求并确认用户。成功后,使用 redirect_uri 作为参数从您的 API 返回 302 重定向。
  • 在您的用户池中,使用自定义消息触发器构建指向您的 API 网关 api 的链接,而不是默认的认知 url
  • 因此,验证链接将类似于:https://myapi.abc.com/confirm?client_id=somevalue&user_name=some_user&confirmation_code=some_code&redirect_uri=https://myapp.com
  • 这些值被传递到后端 lambda,后者向 https://your_domain.auth.us-west-2.amazoncognito.com/confirmUser?client_id=somevalue&user_name=some_user&confirmation_code=some_code 发出 GET 请求
  • 成功后,从您的 API 网关返回 302 https://myapp.com

  • 我知道对于这样一个简单的要求,这是一个复杂的解决方法。最好的方法是提出功能请求并希望他们支持 Cognito URL 中的 redirect_uri。

    编辑

    为了节省 lambda 成本,您还可以在 API 中使用 HTTP 端点并向您所在地区的 cognito service endpoint 发出请求。例子:
    POST  HTTP/1.1
    Host: cognito-idp.us-east-1.amazonaws.com
    x-amz-target: AWSCognitoIdentityProviderService.ConfirmSignUp
    Content-Type: application/x-amz-json-1.1

    {
    "ClientId":"xxxxxxxxxxxxx",
    "ConfirmationCode":"123456",
    "Username":"username"
    }

    关于amazon-web-services - 使用确认 URL 确认 amazon cognito 后如何重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47159568/

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