使用 CodeBuild 条件键作为 IAM 服务角色变量来控制构建访问权限 - Amazon CodeBuild
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

使用 CodeBuild 条件键作为 IAM 服务角色变量来控制构建访问权限

借助 CodeBuild 构建 ARN,您可以使用上下文键来缩小 CodeBuild 服务角色中的资源访问权限范围,从而限制构建资源访问权限。对于 CodeBuild,可用于控制构建访问权限行为的键为 codebuild:buildArncodebuild:projectArn。使用构建项目 ARN,您可以验证对资源的调用是否来自特定的构建项目。要验证这一点,请在 IAM 基于身份的策略中使用 codebuild:buildArncodebuild:projectArn 条件键。

要在策略中使用 codebuild:buildArncodebuild:projectArn 条件键,请将其作为条件与任何 ARN 条件运算符结合使用。键的值必须是解析为有效 ARN 的 IAM 变量。在下面的示例策略中,支持的唯一访问权限将是使用 ${codebuild:projectArn} IAM 变量的项目 ARN 访问构建项目。

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": "s3:PutObject", "Resource": "arn:aws:s3:::bucket-name/${codebuild:projectArn}/*" } ] }