繁体   English   中英

使用CognitoUser而非IAM凭证的浏览器中的JS的AWS开发工具包JS吗?

AWS SDK for JS in Browser with a CognitoUser instead of IAM credentials?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我有一个与S3交互的浏览器应用程序。 由于它主要是内部工具,因此在处理对API的身份验证后,它会直接接收非常受限制的IAM用户的ID和密码,然后将其用于在浏览器中设置AWS开发工具包。

我现在正在尝试将该应用更改为使用Cognito进行身份验证,以便外部用户可以访问它而不会影响我们的安全性。

我最后只是使用AWS Amplify来处理身份验证部分,现在我想弄清楚是否存在一种使用从Cognito获得的凭证来设置AWS JavaScript SDK并从那时开始复制相同功能的方法。 (Amplify当前处理与S3交互的方式不能满足应用程序的所有需求)

有办法吗? 我发现SDK文档非常令人困惑,并且无法确定我要执行的操作是否可以完成。

此外,如果有一种方法可以仅使用JS SDK(不使用Amplify)通过Cognito登录用户,那对我来说也更可取,但这是次要的问题。

1 个回复

是的,您可以使用Amplify轻松完成此操作,我建议您采用这种方法。

这是使用AWS JS SDK中的Route53模块的文档示例,但是您当然可以使用任何AWS模块。

通过https://aws-amplify.github.io/docs/js/authentication#working-with-aws-service-objects

import Route53 from 'aws-sdk/clients/route53';

Auth.currentCredentials()
  .then(credentials => {
    const route53 = new Route53({
      apiVersion: '2013-04-01',
      credentials: Auth.essentialCredentials(credentials)
    });

    // more code working with route53 object
    // route53.changeResourceRecordSets();
  })
3 使用 Java SDK 在代码中嵌入 AWS IAM 凭证

我正在使用 Java AWS IoT SDK,但我遇到了一个问题,我必须将我的 AWS IAM 访问密钥和密钥凭证嵌入到我设备上的 Java 应用程序代码中。 凭据最初仅用于在我的代码中创建客户端,然后使用 X.509 证书进行 MQTT 身份验证和通信。 . 我听说有一种方法可以通过使用AW ...

4 从PHP SDK获取AWS IAM凭证

当我与Amazon连接时,我会定期使用AWS Services,并让我的PHP SDK自动从ec2实例中检索凭证。 我现在有一个要使用的库,在实例化该类时,还需要包含我的AWS秘密密钥和访问密钥。 我如何通过AWS PHP SDK检索当前的访问令牌和私钥,以便不将密钥硬编码到应用程序 ...

5 [节点 JS AWS 开发工具包]上传到 S3 时缺少担任 IAM 角色的凭证

我正在尝试在 S3 存储桶上上传一些文件,它使用硬编码凭据,但我想通过使用 IAM 角色来进一步提高安全性。 这是我所做的: 创建一个 IAM 角色,启用对特定 S3 存储桶的完全访问权限 将角色添加到运行我的应用程序的 EC2 instane 使用未指定凭证的 AWS 开发工具包进行 ...

7 AWS JS SDK-强制性凭证

我有一个具有公共读取访问权限的S3存储桶。 我有一个Web应用程序,并且我想在其中使用AWS开发工具包JS进行客户端调用以列出存储桶中的对象。 我没有凭据的用例,但是在初始化客户端时似乎需要凭据,因为我不断收到“配置中缺少凭据”错误。 因此,我的问题是: 是否需要凭据, ...

8 如何在 Go AWS SDK v2 中使用 IAM 用户凭证

我正在动态获取IAM 用户凭证,并且我想使用我使用程序生成的凭证来创建 session/client 。 不是共享凭据方法。 通过代码。 我试过了,我知道这不是正确的方法,无论如何它都不起作用。 任何人都知道如何正确地做到这一点? ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2021 STACKOOM.COM