使用AWS CLI访问AWS DeviceFarm项目时出现AccessDeniedException权限不足报错
显式拒绝类权限报错核心排查点
显式拒绝的优先级高于任何允许类权限配置,你可以按以下顺序逐一排查:
1. IAM策略冲突排查
- 拉取你当前IAM用户关联的所有权限配置:包含用户直接绑定的策略、所属用户组的所有策略、账号层面的权限边界、AWS组织的服务控制策略(SCP),只要有任意一条策略存在对
devicefarm:ListUploads操作、或者全量DeviceFarm操作的Deny规则,就会触发该报错,和DevOps给的Allow规则无关。 - 检查所有Deny规则的资源匹配逻辑:确认规则里的ARN通配符/指定ARN是否覆盖你实际访问的DeviceFarm项目ARN,若规则存在标签匹配条件,也要确认你访问的项目标签符合要求。
2. 本地CLI配置排查
- 先执行
aws sts get-caller-identity命令,确认当前CLI调用使用的身份确实是DevOps配置了权限的IAM用户,避免你本地配置了多套AWS凭证,默认调用的是其他无权限身份。 - 确认调用区域正确:DeviceFarm的所有资源都固定部署在
us-west-2区域,如果你本地CLI默认配置了其他区域,哪怕请求里写了正确的项目ARN也会触发权限校验失败,可以直接加区域参数测试:aws devicefarm list-uploads --arn 你的项目ARN --region us-west-2。 - 检查IAM用户是否有MFA访问要求:如果DevOps配置了访问DeviceFarm必须携带MFA校验信息,你本地用的是长期静态凭证没有生成MFA临时凭证的话,也会被拒绝访问。
3. 服务专属权限校验
- 确认DevOps给的权限策略里明确包含
devicefarm:ListUploads操作,且资源范围覆盖你访问的项目ARN,避免仅配置了项目级别的其他操作权限,遗漏了上传资源列表的查询权限。 - 若你的账号归属于AWS组织,确认组织层面没有禁用DeviceFarm服务的全局限制,这类限制会作用于账号下所有身份,优先于账号内的IAM权限配置。
内容的提问来源于stack exchange,提问作者Arnoldas Jasiunas
相关产品推荐
相关产品推荐

