【问题标题】:Using the AWS javascript SDK, V3, is there a credentials provider chain equivalent?使用 AWS javascript SDK V3,是否有等效的凭证提供程序链?
【发布时间】:2022-03-12 01:16:28
【问题描述】:

我正在使用 NodeJS 从 V2 迁移到适用于 AWS 的 javascript SDK 的 V3。我们的应用程序需要在几个地方检查凭据。以前我们使用Credential Provider Chain,但我在 V3 中找不到等价物。当我的脚本在本地运行但脚本也在 kubernetes 中运行时,我需要查看共享的 INI 文件 (SharedIniFileCredential),所以(我认为)我还需要 roleAssumerWithWebIdentity。如何在 V3 中使用凭证链?

【问题讨论】:

    标签: javascript amazon-web-services aws-sdk-js


    【解决方案1】:

    模块@aws-sdk/credential-provider-node 提供了一个与您正在寻找的类似的默认凭据提供程序:

    它将尝试从以下来源查找凭据(按优先顺序列出):

    • 通过 process.env 公开的环境变量
    • 来自令牌缓存的 SSO 凭据
    • Web 身份令牌凭据
    • 共享凭据和配置 ini 文件
    • EC2/ECS 实例元数据服务

    这是他们页面中的一个示例:

    const { getDefaultRoleAssumerWithWebIdentity } = require("@aws-sdk/client-sts");
    const { defaultProvider } = require("@aws-sdk/credential-provider-node");
    const { S3Client, GetObjectCommand } = require("@aws-sdk/client-s3");
    
    const provider = defaultProvider({
      roleAssumerWithWebIdentity: getDefaultRoleAssumerWithWebIdentity,
    });
    
    const client = new S3Client({ credentialDefaultProvider: provider });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-17
      • 2021-09-16
      • 2017-01-29
      • 2016-01-20
      • 2021-07-11
      • 2021-12-11
      • 2020-04-20
      • 1970-01-01
      相关资源
      最近更新 更多