我正在尝试将AWS CLI命令放入我的脚本中以设置CloudFront分配,添加SSL证书,并创建到S3存储桶的Route 53路由。
当我尝试运行任何aws cloudfront create-distribution..
时,我被拒绝访问:
调用CreateDistribution操作时发生错误(AccessDenied):User:arn:aws:iam :: 388628639254:user / MyUserName无权执行:cloudfront:CreateDistribution
我尝试了以下建议:Access Denied when creating CloudFront invalidation with AWS CLI
我所有的资源都设置为*
我还向IAM用户添加了以下策略:
CloudFrontFullAccess
AdministratorAccess
IAMUserChangePassword
CloudFrontReadOnlyAccess
AmazonRoute53FullAccess
PowerUserAccess
我希望同时授予我的帐户权限,并确定需要使用AWS CLI的哪个命令:
- Create Cloudfront Distribution
With Settings:
- Add Domain
- Redirect to HTTP/HTTPS
- Add custom SSL Cert
- Create Route 53 Record set for CloudFront
错误说:
用户:arn:aws:iam :: 388628639254:无权执行user / MyUserName:cloudfront:CreateDistribution
这意味着您用于执行命令的IAM用户未获得足够的权限来创建CloudFront分配。
通常,这需要您的管理员授予您必要的访问权限,但您似乎可以自己配置IAM。
此外,CloudFrontFullAccess
授予所有CloudFront权限,这似乎已足够。
因此,当您运行这些命令时,很可能实际上并未使用您期望的凭据。错误消息显示用户的名称,因此请检查是否已将权限添加到此用户。
接下来,尝试使用相同的用户通过CloudFront管理控制台创建CloudFront分配。这将测试您是否确实拥有必要的权限。如果可行,那么没有逻辑上的原因可以通过CLI失败。