首页 > 解决方案 > 无法从假设角色 aws 获得凭证

问题描述

我正在尝试从 aws 的 STS 服务获取AccessKeyIdSecretAccessKeySessionToken 。我只有这个信息

bucket s3: sampleBucket
rol: sampleRol
AWS_REGION: us-east-1
AWS_ACCOUNT: 123456789

我正在执行以尝试积极响应的代码是这样的

import { STSClient, STS, AssumeRoleCommand, GetCallerIdentityCommand } from "@aws-sdk/client-sts";

const sts = new STSClient({ region: 'us-east-1', retryMode: 2 }) //tried with this
const sts2 = new STS({ region: 'us-east-1', retryMode: 2 }) //tried with this also


const init = async () => {
    try {
        console.log("1");
        //Assume Role
        const data = await sts.send(new AssumeRoleCommand({
            RoleArn: "arn:aws:iam::123456789:role/sampleRol",
            RoleSessionName: 'Random',
            DurationSeconds: 900,
        }));
        console.log("DATA", data);

查看文档,据说有了这些信息和实现,调用应该登录到服务并返回信息以进一步连接到 s3 存储桶,但我还不能到达那里

给我的错误是这个

在此处输入图像描述

我究竟做错了什么?需要更多凭据或类似的东西?我很迷茫。非常感谢!

标签: aws-sdkaws-sdk-nodejs

解决方案


推荐阅读