假设我在机器上本地使用aws-cli,则在执行任何操作之前,我都需要使用凭据进行身份验证。
AWS服务如何代表我授予其他服务许可?更具体地说,容器如何在没有事先身份验证的情况下代表我运行aws-cli?
在codePipeline中成功运行了我的第一个管道之后,我问这个问题。我的buildspec.yml确实完美地运行了aws s3 sync
命令,这让我想知道aws内部权限是如何工作的。
AWS CodeBuild使用IAM服务角色向CodeBuild环境提供AWS权限。您应该为CodeBuild配置创建一个服务角色。
当AWS cli工具运行时,并且以前未使用API访问密钥配置它,它将检查它是否在EC2或Lambda等AWS环境中运行,如果是,它将使用分配给该运行时环境的AWS IAM角色。