通过cloudformation创建IAM角色时policyName中的错误

女王

这是角色片段:

"InstanceRole": {
  "Type": "AWS::IAM::Role",
  "Properties": {
    "AssumeRolePolicyDocument": {
      "Version" : "2012-10-17",
      "Statement": [ {
        "Effect": "Allow",
        "Principal": {
           "Service" : [ { "Fn::FindInMap": [ "Region2Principal", { "Ref": "AWS::Region" },"EC2Principal" ] } ] },
        "Action"  : [ "sts:AssumeRole" ]
      }]
    },
    "Path": "/",
    "Policies": [{
      "PolicyName": {"Fn::Join" : ["",["AWS::StackName","InstanceApi"] ] },
      "PolicyDocument": {
        "Statement": [{
          "Effect": "Allow",
          "Action": "*",
          "Resource": "*"
        }]
      }
    }]
  }
},

这是错误: The specified value for policyName is invalid. It must contain only alphanumeric characters and/or the following: +=,.@_-

AWS::StackName我输入的值tmplt-stack,生成的给出错误的策略名称是:tmplt-stack-InstanceApi-O7KF5OL0TA2Q

我不明白为什么cloudformation拒绝该名称,即使它仅包含少量字符“-”,并且根据错误消息允许使用该名称,其余均为字母数字字符。

女王

这是我在使用伪参数AWS :: StackNAme时犯的一个巨大错误,我没有使用“ Ref”来调用它

"InstanceRole": {
  "Type": "AWS::IAM::Role",
  "Properties": {
    "AssumeRolePolicyDocument": {
      "Version" : "2012-10-17",
      "Statement": [ {
        "Effect": "Allow",
        "Principal": {
           "Service" : [ { "Fn::FindInMap": [ "Region2Principal", { "Ref": "AWS::Region" },"EC2Principal" ] } ] },
        "Action"  : [ "sts:AssumeRole" ]
      }]
    },
    "Path": "/",
    "Policies": [{
      "PolicyName": {"Fn::Join" : ["",[{"Ref":"AWS::StackName"},"InstanceApi"] ] },
      "PolicyDocument": {
        "Statement": [{
          "Effect": "Allow",
          "Action": "*",
          "Resource": "*"
        }]
      }
    }]
  }
},

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Cloudformation模板参数中创建IAM角色下拉列表

将多个IAM角色与CloudFormation中的AWS :: IAM :: InstanceProfile关联

CloudFormation IAM角色-AssumeRolePolicyDocument

通过CloudFormation将默认KMS密钥的使用授予IAM角色

cloudformation模板以使用内联策略创建IAM角色

如何创建一个条件,该条件仅允许在同一CloudFormation堆栈中创建的资源承担IAM角色?

AWS 无服务器框架:创建 IAM 角色和策略时出现 MalformedPolicyDocument 错误

错误:创建 IAM 角色 s3_access 时出错:MalformedPolicyDocument

尝试使用Boto3创建IAM角色时,总是出现MalformedPolicyDocument错误

从 SAM 中的模板创建 IAM 角色

IAM CloudFormation模板AWS角色

cloudformation 堆栈使用的 IAM 角色

使用cloudformation附加IAM角色

CloudFormation 角色使用 QueuePolicy Ref 作为 IAM 角色资源中的 ManagedPolicy?

创建IAM角色时出错:MalformedPolicyDocument:禁止了字段Resource

创建AWS Lambda函数时使用现有IAM角色

创建 IAM 角色时出错:MalformedPolicyDocument:已禁止字段资源

用于创建EC2的AWS CloudFormation模板-列出IAM角色

通过boto3中的IAM角色过滤实例?

创建IAM策略时出现MalformedPolicyDocument错误

有关在AWS IAM中创建角色的元权限?

如何使AWS Sagemaker中的IAM角色错误消失?

创建IAM角色并将策略附加到该角色时出错

在Java中创建keycloak角色时出现错误400错误的请求

将现有IAM角色与CloudFormation中的EC2实例相关联

使用 AWS-CDK 创建新 IAM 角色时创建自定义信任策略

SAM模板中的IAM角色

通过 boto3 担任 IAM 用户角色时拒绝访问

创建IAM角色时出错-属性PolicyDocument的值必须是一个对象