AWSNodeJSSDK中使用外部ID假定角色后,无法创建Lambda函数?
创始人
2024-09-26 16:30:46
0

当使用外部ID假定角色时,AWS NodeJS SDK无法创建Lambda函数。这可能是因为创建函数时需要使用的IAM角色与假定的角色不同。

解决方法是使用aws-sdk中的STS(Security Token Service)服务来获取临时凭证,并在创建Lambda函数时使用这些凭证。以下是一个示例代码,演示如何使用STS服务创建Lambda函数:

const AWS = require('aws-sdk');

// 要使用的IAM角色的ARN
const assumedRoleArn = 'arn:aws:iam::account-id:role/your-role-name';
// 要获取外部ID的IAM角色的ARN
const roleArn = 'arn:aws:iam::account-id:role/your-role-name';
// 要使用的AWS服务的区域
const region = 'us-west-2'; 

// 创建STS服务对象
const sts = new AWS.STS({ region });

// 获取临时凭证
sts.assumeRole({
  RoleArn: assumedRoleArn,
  RoleSessionName: 'lambda-session',
  ExternalId: 'your-external-id'
}, (err, data) => {
  if (err) {
    console.error(err);
  } else {
    // 创建Lambda服务对象
    const lambda = new AWS.Lambda({
      region,
      accessKeyId: data.Credentials.AccessKeyId,
      secretAccessKey: data.Credentials.SecretAccessKey,
      sessionToken: data.Credentials.SessionToken
    });

    // 创建Lambda函数
    lambda.createFunction({
      FunctionName: 'my-function',
      Runtime: 'nodejs',
      Role: 'arn:aws:iam::account-id:role/your-role-name',
      Handler: 'index.handler',
      Code: {
        S3Bucket: 'my-function-bucket',
        S3Key: 'my-function.zip'
      }
    }, (error, result) => {
      if (error) {
        console.error(error);
      } else {
        console.log(result);
      }
    });
  }
});

在上面的示例代码中,sts.assumeRole方法用于获取临时凭证。然后,在创建Lambda函数时,将这些凭证作为accessKeyIdsecretAccessKeysessionToken参数传递给AWS.Lambda服务对象。这样,AWS NodeJS SDK就可以使用正确的IAM角色来创建Lambda函数。

相关内容

热门资讯

发现一款!掌中乐游戏中心破解版... 发现一款!掌中乐游戏中心破解版,微乐家乡破解,实用技巧(有挂规律)-哔哩哔哩;1、不需要AI权限,帮...
总算了解!欢乐对决辅助菜单,榕... 总算了解!欢乐对决辅助菜单,榕城510k有没有挂,技巧教程(揭秘有挂)-哔哩哔哩;1、超多福利:超高...
揭秘攻略!乐乐围棋入门辅助,新... 揭秘攻略!乐乐围棋入门辅助,新久久辅助器,系统教程(今日头条)-哔哩哔哩;小薇(透视辅助)致您一封信...
我来分享!决胜游戏辅助器,皮皮... 《我来分享!决胜游戏辅助器,皮皮跑子胡子修改器,攻略教程!(有挂细节)-哔哩哔哩》 皮皮跑子胡子修改...
我来教教大家!蜀山四川破解好友... 我来教教大家!蜀山四川破解好友版辅助,邯郸胡乐修改器,揭秘攻略(有挂猫腻)-哔哩哔哩;人气非常高,a...
透视有挂!泸州大二新手攻略,新... 【福星临门,好运相随】;透视有挂!泸州大二新手攻略,新九哥开挂,线上教程(发现有挂)-哔哩哔哩;暗藏...
玩家攻略推荐!宝宝浙江辅助器,... 玩家攻略推荐!宝宝浙江辅助器,新海贝之城脚本,曝光教程(有挂细节)-哔哩哔哩;1、很好的新海贝之城脚...
科普常识!上饶辅助,龙江填大坑... 科普常识!上饶辅助,龙江填大坑视频攻略,细节揭秘(有挂秘籍)-哔哩哔哩;超受欢迎的龙江填大坑视频攻略...
让我来分享经验!牛总管辅助方法... 让我来分享经验!牛总管辅助方法,葫芦娃七子降妖破解版,玩家教你(有挂神器)-哔哩哔哩;1、完成葫芦娃...
重大通报!葫芦娃辅助修改器下载... 重大通报!葫芦娃辅助修改器下载,天天飞小鸡辅助,攻略教程!(果真有挂)-哔哩哔哩;是一款可以让一直输...