gpt4 book ai didi

amazon-web-services - 如何使用 AWS cognito 和自定义身份验证来创建临时 s3 上传安全 token

转载 作者:行者123 更新时间:2023-12-04 21:12:49 25 4
gpt4 key购买 nike

因此,我对关于 Cognito 的 Amazon 文档关于他们陈述的用例之一感到有些困惑:“使用您自己的身份系统......允许您的应用程序将数据保存到 AWS 云”。

在我的情况下,我想给他们 aws token ,以便从移动客户端直接上传到 s3,而无需将我的 aws key 放在客户端设备上。

为了在服务器端实现这一点 - 我如何生成正确的凭据,以便客户端可以在客户端应用程序上使用此身份上传到 s3?

我要先打电话吗

  • getId()(如果我使用自己的登录名,我会传递什么值 - 因为我没有提供 Facebook 或 twitter ID?我如何传递我自己的数据库生成的用户 ID?
  • AWS.CognitoIdentity.getCredentialsForIdentity()
    来自 congito API 的方法......或者我可能必须新建一个 AWS.CognitoIdentity?

  • 任何指向一个好例子的链接?我在文档本身中找不到任何完整的示例。

    例如在他们的文档中亚马逊说
    var identityId = AWS.config.credentials.identityId;
    立即为您的最终用户检索身份标识,但是查看它,它似乎是一个属性而不是一个 id 工厂。它如何生成唯一 ID,或者我的所有用户共享一个身份 ID?是否有某种凭证可以从中获得,然后我可以将其传递给我的移动客户端以获得到 s3 的上传权限?

    我还阅读了一些关于 AWS STS 服务的内容 - 这是使用 Cognito 的替代方法吗?

    最佳答案

    你可以找到一个例子 in this AWS Mobile blog post以及 this other blog post 中的开发者身份验证身份和常规身份之间的差异.

    基本上,流程是您的应用程序将针对您的后端进行身份验证,然后您的后端将调用 GetOpenIdTokenForDeveloperIdentity 并将生成的 token 和身份 ID 发送到用户的应用程序。用户的应用程序可以使用此 token 通过 SDK 获取 Cognito 凭证,并使用此凭证调用 S3 或其他 AWS 服务。每个用户都有自己的凭据,因此他们只能访问自己在 S3 中的资源。

    关于 STS,SDK 内部会使用它来获取凭据,但是只要您使用 SDK,您就无需担心它。它不是 Cognito 的替代品,但它们可以协同工作。

    关于amazon-web-services - 如何使用 AWS cognito 和自定义身份验证来创建临时 s3 上传安全 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30878770/

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