Amazon cloudformation AWS Cloudformation如何从S3存储桶名称CommaDelimitedList生成ARN列表-半循环
以下是参数-S3存储桶名称列表:Amazon cloudformation AWS Cloudformation如何从S3存储桶名称CommaDelimitedList生成ARN列表-半循环,amazon-cloudformation,Amazon Cloudformation,以下是参数-S3存储桶名称列表: Parameters: S3BucketNames: Description: Enter S3 Bucket Names Type: CommaDelimitedList Default: my-first-bucket,testing-bucket,codepipeline-bucket 当arn必须采用以下适合IAM策略的格式时,需要为GetObject、PutObject操作制定策略IAM策略: arn:${Partitio
Parameters:
S3BucketNames:
Description: Enter S3 Bucket Names
Type: CommaDelimitedList
Default: my-first-bucket,testing-bucket,codepipeline-bucket
当arn必须采用以下适合IAM策略的格式时,需要为GetObject、PutObject操作制定策略IAM策略:
arn:${Partition}:s3:::${BucketName}/${ObjectName}
在我的示例中,它应该如下所示:
"arn:aws:s3:::my-first-bucket/*",
"arn:aws:s3:::testing-bucket/*",
"arn:aws:s3:::codepipeline-bucket/*"
我不得不想一想如何才能成功,当你知道这一点时,这是显而易见的,但也许会对某人有所帮助:
S3RolePolicy:
Type: AWS::IAM::Policy
Properties:
PolicyName: DemoPolicy
PolicyDocument:
Statement:
- Effect: Allow
Action:
- s3:PutObject
- s3:GetObject
Resource: !Split
- ","
- !Sub
- arn:aws:s3:::${S3Middle}/*
- S3Middle: !Join [ "/*,arn:aws:s3:::" , !Ref S3BucketNames ]
这不是一个完整的云形成模板-只是一个样本和平