本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
错误:“AccessDeniedException”
场景
尝试共享资源或查看资源共享时,您会收到 Access Denied
异常。
原因
如果您在没有所需权限的情况下尝试创建资源共享,则可能会收到此错误。这可能是由于附加到您的 AWS Identity and Access Management (IAM) 委托人的策略权限不足造成的。这也可能是因为 AWS Organizations 服务控制策略 (SCP) 的限制会影响您 AWS 账户。
解决方案
要提供访问权限,请为您的用户、组或角色添加权限:
-
中的用户和群组 AWS IAM Identity Center:
创建权限集合。按照《AWS IAM Identity Center 用户指南》中创建权限集的说明进行操作。
-
通过身份提供商在 IAM 中托管的用户:
创建适用于身份联合验证的角色。按照《IAM 用户指南》中针对第三方身份提供商创建角色(联合身份验证)的说明进行操作。
-
IAM 用户:
-
创建您的用户可以担任的角色。按照《IAM 用户指南》中为 IAM 用户创建角色的说明进行操作。
-
(不推荐使用)将策略直接附加到用户或将用户添加到用户组。按照《IAM 用户指南》中向用户添加权限(控制台)中的说明进行操作。
-
要解决此错误,您需要确保由发出请求的主体所使用的权限策略中的 Allow
语句授予权限。此外,您的组织不得阻止这些权限 SCPs。
要创建资源共享,您需要以下两种权限:
-
ram:CreateResourceShare
-
ram:AssociateResourceShare
要查看资源共享,您需要以下权限:
-
ram:GetResourceShares
要向资源共享附加权限,您需要以下权限:
-
resourceOwningService
:PutPolicyAction
这是一个占位符。必须将其替换为拥有您要共享的资源的服务的 PutPolicy “” 权限(或等效权限)。例如,如果您要共享 Route 53 Resolver 规则,则所需的权限将是:
route53resolver:PutResolverRulePolicy
。如果要允许创建包含多种资源类型的资源共享,则必须包括要允许的每种资源类型的相关权限。
下文是此类 IAM 权限策略的示例。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"ram:CreateResourceShare",
"ram:AssociateResourceShare",
"ram:GetResourceShares",
"resourceOwningService
:PutPolicyAction
"
],
"Resource": "*"
}
]
}