Amazon web services 如何在terraform中旋转时将现有IAM角色设置为新实例

Amazon web services 如何在terraform中旋转时将现有IAM角色设置为新实例,amazon-web-services,amazon-ec2,terraform,amazon-iam,Amazon Web Services,Amazon Ec2,Terraform,Amazon Iam,我正在尝试附加在AWS中创建的现有角色,但无法将其添加到Terraform代码中。我试图在实例概要文件中添加角色,但对我来说也不起作用 是否有任何直接的方法将其添加到terraform代码中的资源中 iam_instance_profile = "my-role" 我的角色是完全访问ec2 iam_instance_profile = "my-role" 是将IAM实例配置文件分配给实例的正确方法。您可能没有分配实例配置文件的权限。确保运行Terraform脚本的人具有iam:PassR

我正在尝试附加在AWS中创建的现有角色,但无法将其添加到Terraform代码中。我试图在实例概要文件中添加角色,但对我来说也不起作用

是否有任何直接的方法将其添加到terraform代码中的资源中

iam_instance_profile  = "my-role"
我的角色是完全访问ec2

iam_instance_profile  = "my-role"
是将IAM实例配置文件分配给实例的正确方法。您可能没有分配实例配置文件的权限。确保运行Terraform脚本的人具有
iam:PassRole
权限。它经常被忽视


请参阅:

我遵循了@helloV在前一篇文章中提到的使用terraform/cfn中现有角色的过程

步骤1:创建新的自定义策略并添加以下内容

{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "iam:GetRole",
            "iam:PassRole"
        ],
        "Resource": "arn:aws:iam::<account-id>:role/<role-name>"
    }]
}
{
“版本”:“2012-10-17”,
“声明”:[{
“效果”:“允许”,
“行动”:[
“iam:GetRole”,
“iam:密码角色”
],
“资源”:“arn:aws:iam:::角色/”
}]
}
在上面的json代码片段中,相应地更改帐户id角色名称

步骤2:


将新创建的自定义策略附加到现有IAM角色

在创建自定义策略后,可以完美地工作。我忽略了许可。谢谢@helloV