本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS CodePipeline
基于资源的策略示例
其他服务(如 Amazon S3)还支持基于资源的权限策略。例如,您可以将策略附加到 S3 存储桶以管理对该存储桶的访问权限。尽管它 CodePipeline 不支持基于资源的策略,但它确实将要在管道中使用的工件存储在版本控制的 S3 存储桶中。
例 为要用作 CodePipeline 的构件存储的 S3 存储桶创建策略
您可以使用任何版本控制的 S3 存储桶作为对象存储。 CodePipeline如果您使用创建管道向导创建第一个管道,则系统将会为您创建此 S3 存储桶,以确保上传到构件存储的所有对象都已加密,并且与存储桶的连接是安全的。如果您创建自己的 S3 存储桶,则作为最佳实践,请考虑向存储桶添加以下策略或其元素。在此策略中,S3 存储桶的 ARN 是 codepipeline-us-east-2-1234567890
。将此 ARN 替换为您的 S3 存储桶的 ARN:
- JSON
-
-
{
"Version": "2012-10-17",
"Id": "SSEAndSSLPolicy",
"Statement": [
{
"Sid": "DenyUnEncryptedObjectUploads",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket
/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "aws:kms"
}
}
},
{
"Sid": "DenyInsecureConnections",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::amzn-s3-demo-bucket
/*",
"Condition": {
"Bool": {
"aws:SecureTransport": false
}
}
}
]
}