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:*"
任何想法如何解决这个问题?
你看到了什么错误?仅供参考“主要”:“*”等同于“主要”:{“AWS”:“*”}。 – jarmod
其实我删除了堆栈,并忘记捕获确切的错误,但基本上它说资源之一未能创建,没有具体的位,我相信它是因为这个原因:Principal:“AWS:*”,因为当我这样做时作品:校长:“*” –