跳至内容

如何解决 AWS Organizations 中的 SCP 显式拒绝错误?

1 分钟阅读
0

AWS Organizations 成员账户收到了一条类似于以下内容的显式拒绝错误消息: “The IAM Entity is not authorized to perform API action on resource: arn:aws:iam::123456789012:role/Admin with an explicit deny in a service control policy”。

简短描述

可以使用 Organizations Service 控制策略(SCP)来管理组织中的成员账户权限。但是,SCP 不会向组织中的 AWS Identity and Access Management(IAM)身份授予权限。

要授权执行 API 操作,SCP 和 IAM 基于身份的策略都必须允许成员账户访问权限。

解决方法

要确认显式拒绝错误是因为 SCP 拒绝请求而发生的,请使用 AWS CloudTrail 事件历史记录搜索事件名称。然后,从 AWS Organizations 管理账户中,使用 Organizations 控制台删除或修改策略以允许 API 操作请求。

**注意:**如果在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保使用的是最新版本的 AWS CLI

查看 CloudTrail 事件历史记录

使用 CloudTrail 控制台

可以查看过去 90 天内所有支持的服务、集成和事件类型(例如创建、修改、删除)以及不可变活动。无需设置跟踪即可使用 CloudTrail 事件历史记录。

有关说明,请参阅在 CloudTrail 控制台中查看最近的 CloudTrail 事件

使用 AWS CLI

运行 lookup-events AWS CLI 命令来查找过去 90 天的管理事件CloudTrail Insights 事件

运行 filter-log-events 命令应用指标筛选器来搜索日志事件中的特定术语、短语和值。然后,可以将其更改为 CloudWatch 指标和警报。

有关更多信息,请参阅指标筛选器、订阅筛选器、筛选器日志事件和 Live Tail 的筛选器模式语法

使用 AWS Organizations 控制台删除或修改 SCP

完成以下步骤:

  1. 使用 AWS Organizations 管理账户打开 AWS Organizations 控制台。
  2. 在导航窗格中,选择 AWS 账户,然后选择受影响的成员账户。
  3. 选择策略选项卡,然后查看所有限制访问 API 操作的已应用 SCP。
  4. 要编辑策略,请先选中 SCP,然后再选择编辑策略。编辑策略后,选择保存更改
    -或-
    要删除策略,请先选中 SCP,然后再选择删除
    -或-
    要分离策略,请先选中 SCP,然后再选择分离

在成员账户中再次运行 API 操作以确认显式拒绝错误已解决。

有关更多信息,请参阅查看 Organizations(控制台)信息

AWS 官方已更新 1 年前