Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅
中国的 Amazon Web Services 服务入门
(PDF)。
Amazon RAM 的 IAM 策略示例
本主题包括用于 Amazon RAM 演示共享特定资源和资源类型以及限制共享的 IAM 策略示例。
示例 1:允许共享特定资源
您可以使用 IAM 权限策略,将主体限制为只将特定资源与资源共享关联。
例如,以下策略将主体限制为只与指定的 Amazon 资源名称(ARN)共享解析程序规则。如果请求不包含 ResourceArn 参数,或者请求中包含该参数,且其值与指定的 ARN 完全匹配,则运算符 StringEqualsIfExists 允许该请求。
有关何时以及为何使用 ...IfExists 运算符的更多信息,请参阅《IAM 用户指南》中的 ...IfExists 条件运算符。
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": ["ram:CreateResourceShare", "ram:AssociateResourceShare"],
"Resource": "*",
"Condition": {
"StringEqualsIfExists": {
"ram:ResourceArn": "arn:aws:route53resolver:us-west-2:123456789012:resolver-rule/rslvr-rr-5328a0899aexample"
}
}
}]
}
示例 2:允许共享特定资源类型
您可以使用 IAM 策略,将主体限制为只将特定资源类型与资源共享关联。
操作、AssociateResourceShare 和 CreateResourceShare 可以接受主体和 resourceArns 作为独立输入参数。因此,Amazon RAM 会独立授权每个主体和资源,所以可能会有多个请求上下文。这意味着,当主体与 Amazon RAM 资源共享关联时,请求上下文中不存在 ram:RequestedResourceType 条件键。同样,当资源与 Amazon RAM 资源共享关联时,请求上下文中不存在 ram:Principal 条件键。因此,要在将主体与 Amazon RAM 资源共享关联时允许 AssociateResourceShare 和 CreateResourceShare,可以使用 Null 条件运算符。
例如,以下策略将主体限制为只共享 Amazon Route 53 Resolver 规则,并允许主体将任何主体与该共享关联。
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [{
"Sid": "AllowOnlySpecificResourceType",
"Effect": "Allow",
"Action": ["ram:CreateResourceShare", "ram:AssociateResourceShare"],
"Resource": "*",
"Condition": {
"StringEquals": {
"ram:RequestedResourceType": "route53resolver:ResolverRule"
}
}
},
{
"Sid": "AllowAssociatingPrincipals",
"Effect": "Allow",
"Action": ["ram:CreateResourceShare", "ram:AssociateResourceShare"],
"Resource": "*",
"Condition": {
"Null": {
"ram:Principal": "false"
}
}
}
]
}
示例 3:限制与外部 Amazon Web Services 账户的共享
您可以使用 IAM 策略,防止主体与其 Amazon 组织外部的 Amazon Web Services 账户共享资源。
例如,以下 IAM 策略防止主体向资源共享添加外部 Amazon Web Services 账户。
- JSON
-
-
{
"Version":"2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "ram:CreateResourceShare",
"Resource": "*",
"Condition": {
"Bool": {
"ram:RequestedAllowsExternalPrincipals": "false"
}
}
}]
}