1

我有一个简单的云信息,它创建一个附有策略的存储桶。这里是云形成的代码,我有:我不能在我的云信息代码中添加“AWS”:“*”

--- 
AWSTemplateFormatVersion: '2010-09-09' 
Resources: 
    S3Bucket: 
    Type: AWS::S3::Bucket 
    Properties: 
     BucketName: testforcfn 
    DeletionPolicy: Retain 

    BucketPolicy: 
    Type: AWS::S3::BucketPolicy 
    Properties: 
     PolicyDocument: 
     Id: MyPolicy 
     Version: '2012-10-17' 
     Statement: 
     - Sid: PublicReadForGetBucketObjects 
      Effect: Allow 
      Principal: "*" 
      Action: s3:GetObject 
      Resource: 
      Fn::Join: 
      - '' 
      - - 'arn:aws:s3:::' 
       - Ref: S3Bucket 
       - "/*" 
     Bucket: 
     Ref: S3Bucket 
Outputs: 
    S3Info: 
    Value: 
     Ref: S3Bucket 

一切工作正常,但是,在主斗的政策,而不是“”我需要“AWS”:“”。因此,对于更多的解释这里是斗政策我想有:

{ 
    "Version": "2012-10-17", 
    "Id": "Policy1506624486110", 
    "Statement": [{ 
     "Sid": "Stmt1506624421375", 
     "Effect": "Allow", 
     "Principal": { 
      "AWS": "*" 
     }, 
     "Action": "s3:GetObject", 
     "Resource": "arn:aws:s3:::testforcfn/*" 
    }] 
} 

所以这部分我想在我的cloudformation代码是什么:

 "Principal": { 
      "AWS": "*" 
     } 

当我做这在我的cloudformation我得到一个错误:

   Principal: "AWS:*" 

任何想法如何解决这个问题?

+0

你看到了什么错误?仅供参考“主要”:“*”等同于“主要”:{“AWS”:“*”}。 – jarmod

+0

其实我删除了堆栈,并忘记捕获确切的错误,但基本上它说资源之一未能创建,没有具体的位,我相信它是因为这个原因:Principal:“AWS:*”,因为当我这样做时作品:校长:“*” –

回答

1

我会尝试以下方法:

Principal: 
    AWS: "*" 

你可以找到一个相关的例子here

相关问题