- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
云使用用户、用户访问 key 和策略形成 S3 存储桶。它应该创建堆栈并输出通过 SDK 使用创建的 S3 存储桶所需的用户访问 key 。当尝试引用 BucketPolicy 主体中的 BucketUser ARN 时,存储桶策略会永远陷入 CREATING 阶段。
CloudFormation 成功
BucketPolicy:...主体:“*”
但是 BucketPolicy 资源永远卡在 CREATE 中
BucketPolicy:...主体:!GetAtt BucketUser.Arn
当BucketPolicy:...主体:“*”时,这会成功返回BucketUser.Arn
Outputs:
BucketUserArn:
Value: !GetAtt BucketUser.Arn
所需模板:
AWSTemplateFormatVersion: "2010-09-09"
Description: "Creates bucket with bucket policy"
#Metadata:
Parameters:
app:
Type: String
Description: (required) Application name (Also used for bucket name. Follow S3 bucket name conventions)
Default: ymessage-bucket-test
Resources:
BucketUser:
Type: "AWS::IAM::User"
Properties:
UserName: !Ref app
UserAccessKey:
Type: "AWS::IAM::AccessKey"
Properties:
Status: Active
UserName: !Ref app
DependsOn: BucketUser
Bucket:
Type: AWS::S3::Bucket
Properties:
BucketName: !Ref app
BucketPolicy:
Type: "AWS::S3::BucketPolicy"
Properties:
Bucket: !Ref app
PolicyDocument:
Statement:
-
Action:
- "s3:*"
Effect: "Allow"
Resource:
Fn::Join:
- ""
-
- "arn:aws:s3:::"
- !Ref app
- "/*"
Principal: !GetAtt BucketUser.Arn
DependsOn: BucketUser
Outputs:
AccessKeyId:
Value: !Ref UserAccessKey
AccessKeySecret:
Value: !GetAtt UserAccessKey.SecretAccessKey
BucketURL:
Value: !GetAtt Bucket.WebsiteURL
BucketUserArn:
Value: !GetAtt BucketUser.Arn
工作模板:
AWSTemplateFormatVersion: "2010-09-09"
Description: "Creates bucket with bucket policy"
#Metadata:
Parameters:
app:
Type: String
Description: (required) Application name (Also used for bucket name. Follow S3 bucket name conventions)
Default: ymessage-bucket-test
Resources:
BucketUser:
Type: "AWS::IAM::User"
Properties:
UserName: !Ref app
UserAccessKey:
Type: "AWS::IAM::AccessKey"
Properties:
Status: Active
UserName: !Ref app
DependsOn: BucketUser
Bucket:
Type: AWS::S3::Bucket
Properties:
BucketName: !Ref app
BucketPolicy:
Type: "AWS::S3::BucketPolicy"
Properties:
Bucket: !Ref app
PolicyDocument:
Statement:
-
Action:
- "s3:*"
Effect: "Allow"
Resource:
Fn::Join:
- ""
-
- "arn:aws:s3:::"
- !Ref app
- "/*"
Principal: "*"
DependsOn: BucketUser
Outputs:
AccessKeyId:
Value: !Ref UserAccessKey
AccessKeySecret:
Value: !GetAtt UserAccessKey.SecretAccessKey
BucketURL:
Value: !GetAtt Bucket.WebsiteURL
BucketUserArn:
Value: !GetAtt BucketUser.Arn
最佳答案
发现问题:在 BucketPolicy 中它可以直接接受 Principal: "*"
但如果你想使用 arn,请执行以下操作:
Principal:
AWS:
- !GetAtt BucketUser.Arn
关于amazon-s3 - CloudFormation BucketPolicy 停留在 CREATE。从未完成创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41553211/
我想将这个 CloudFormation 片段翻译成 CDK: Type: AWS::S3::BucketPolicy Properties: Bucket: Ref: S3BucketI
云使用用户、用户访问 key 和策略形成 S3 存储桶。它应该创建堆栈并输出通过 SDK 使用创建的 S3 存储桶所需的用户访问 key 。当尝试引用 BucketPolicy 主体中的 Bucket
由于以下 S3 存储桶策略,我的 Cloudformation 堆栈失败并不断回滚。引用的 S3 存储桶是一个用于 CloudTrail 日志的单独存储桶(据我所知,这样的事情是使用 CloudTra
我尝试使用以下 yaml 在 CloudFormation 中创建 S3 存储桶策略: cloudTrailBucketPolicy: Type: "AWS::S3::BucketPol
我尝试在 yaml 中创建以下存储桶策略,但存储桶策略无法创建: Cloudformation 错误消息: Invalid policy syntax. (Service: Amazon S3; St
我正在尝试在 serverless.yml 文件中添加 S3 存储桶策略,该策略将授予我创建的 IAM 用户对该存储桶的权限。 我首先直接在控制台中直接在不同阶段(开发)的存储桶上添加策略,现在我尝试
我最近开始学习我的第一个 AWS 认证,同时我也开始使用 CloudFormation。然而,我遇到了障碍。 我的问题:我正在尝试创建一个 S3 存储桶并向其附加存储桶策略。但是,每当我尝试验证模板时
我是一名优秀的程序员,十分优秀!