gpt4 book ai didi

amazon-web-services - 如何让账户和所有 Lambda 都担任角色?

转载 作者:行者123 更新时间:2023-12-04 10:15:43 24 4
gpt4 key购买 nike

我有一个角色,我希望我的根帐户和我的所有 Lambda 都能够承担它。

在信任关系中,我有以下几点:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::XXXXXXX:root",
"Service": "lambda.amazonaws.com"

},
"Action": "sts:AssumeRole"
}
]
}

但是,这似乎不起作用。当我尝试在我的 Lambda 代码中担任该角色时,我收到拒绝访问错误。

如果我要删除 "Service": "lambda.amazonaws.com"并将 Lambda 的特定角色添加到 Principal.AWS ,这将起作用。但是我有这么多 Lambda,我不想将每个 Lambda 角色都添加到 Principal 列表中。

如何设置信任关系,以便根账户和所有 Lambda 能够承担此角色?

最佳答案

指定 "Service": "lambda.amazonaws.com" 意味着 Lambda 服务可以使用该角色启动 Lambda。这并不意味着 Lambda 在运行后就可以承担该角色。

我认为最简单的解决方案是两部分:您将可承担角色中的委托(delegate)人指定为您的 AWS 账户,然后您授予在 Lambda 执行角色中承担该角色的能力,使用如下语句:

{
"Version": "2012-10-17",
"Statement": {
"Action": [
"sts:AssumeRole"
],
"Resource": [
"arn:aws:iam::123456789012:role/AssumableRole"
],
"Effect": "Allow"
}
}

您可以将相同的语句附加到包含允许担任该角色的用户的组。

关于amazon-web-services - 如何让账户和所有 Lambda 都担任角色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61069314/

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