本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon
在使用 IAM 管理Amazon服务访问之前,您应了解哪些 IAM 功能可与 IAM 一起使用。要大致了解Amazon服务如何与 IAM 一起使用,请参阅 IA M 用户指南中的Amazon服务
基于身份的策略
通过使用 IAM 基于身份的策略,您可以指定允许或拒绝的操作和资源以及允许或拒绝操作的条件。要了解在 JSON 策略中使用的所有元素,请参阅 IAM 用户指南 中的 IAM JSON 策略元素参考。
操作
基于 IAM 身份的策略的 Action
元素描述该策略将允许或拒绝的特定操作。策略操作通常与关联的 Amazon API 操作同名。此策略用于策略中以授予执行关联操作的权限。
策略操作在操作前面使用一个前缀。策略语句必须包含 Action
或 NotAction
元素。每个服务定义了一组自己的操作,以描述您可以使用该服务执行的任务。
要在单个语句中指定多项操作,请使用逗号将它们隔开,如下所示:
"Action": [ "
service-prefix
:action1", "service-prefix
:action2"
您也可以使用通配符 (*) 指定多个操作。例如,要指定以单词 Describe
开头的所有操作,包括以下操作:
"Action": "
service-prefix
:Describe*"
要查看Amazon操作列表,请参阅 IAM 用户指南中的Amazon服务、资源和条件键。
资源
Resource
元素指定要向其应用操作的对象。语句必须包含 Resource
或 NotResource
元素。您可使用 ARN 来指定资源,或使用通配符 (*) 以指明该语句适用于所有资源。
有关 ARN 格式的更多信息,请参阅 Amazon Resource Name(ARN)和 Amazon 服务命名空间。
要指定属于特定账户的所有实例,请使用通配符 (*):
"Resource": "arn:aws:
service-prefix
:us-east-1:123456789012
:resource-type
/*"
无法对特定资源执行某些 操作,例如,用于创建资源的操作。在这些情况下,您必须使用通配符 (*)。
"Resource": "*"
某些 API 操作涉及多个资源,因此用户必须具有使用所有资源的权限。要在单个语句中指定多个资源,请使用逗号分隔 ARN。
"Resource": [ "resource1", "resource2"
要了解您可以使用哪些操作指定每个资源的 ARN,请参阅Amazon服务的操作、资源和条件键。
条件键
在 Condition
元素(或 Condition
块)中,可以指定语句生效的条件。Condition
元素是可选的。您可以构建使用条件运算符(例如,等于或小于)的条件表达式,以使策略中的条件与请求中的值相匹配。
如果您在一个语句中指定多个 Condition
元素,或在单个 Condition
元素中指定多个键,则 Amazon 使用逻辑 AND
运算评估它们。如果您为单个条件键指定多个值,则 Amazon 使用逻辑 OR
运算来评估条件。在授予语句的权限之前必须满足所有的条件。
在指定条件时,您也可以使用占位符变量。例如,仅当用户使用IAM 用户名标记 IAM 用户时,您才能为其授予访问资源的权限。有关更多信息,请参阅 IAM 用户指南中的 IAM 策略元素:变量和标签。
要查看所有Amazon全局条件键,请参阅 IAM 用户指南中的Amazon全局条件上下文键。
Amazon 基于资源的策略
基于资源的策略是 JSON 策略文档,它们指定了指定委托人可以对资源执行的操作以及在什么条件下执行操作。基于资源的策略允许您基于资源向其他 账户授予使用权限。
要启用跨账户访问,您可以将整个账户或其他账户中的 IAM 实体指定为基于资源的策略中的委托人。将跨账户委托人添加到基于资源的策略只是建立信任关系工作的一半而已。当委托人和资源位于不同的Amazon账户中时,还必须授予委托人实体对资源的访问权限。通过将基于身份的策略附加到实体以授予权限。但是,如果基于资源的策略向同一个账户中的委托人授予访问权限,则不需要额外的基于身份的策略。有关更多信息,请参阅 IAM 用户指南 中的 IAM 角色与基于资源的策略有何不同。
要查看详细的基于资源的策略页面示例,请参阅 https://docs.amazonaws.cn/lambda/latest/dg/access-control-resource-based.html。
基于标签的授权
您可以将标签附加到 资源,或者在请求中传递标签。要基于标签控制访问,您需要使用
、prefix
:ResourceTag/key-name
aws:RequestTag/
或 key-name
aws:TagKeys
条件键在策略的条件元素中提供标签信息。
要查看基于身份的策略(用于根据资源上的标签来限制对该资源的访问)的示例,请参阅根据标签查看 资源。
IAM 角色
IAM 角色是 Amazon 账户中具有特定权限的实体。
使用临时凭证
您可以使用临时凭证进行联合身份登录,担任 IAM 角色或担任跨账户角色。您可以通过调用Amazon Security Token Service (Amazon STS) API 操作(例如AssumeRole或)来获取临时安全证书GetFederationToken。
服务相关角色
服务相关角色允许 Amazon 服务访问其它服务中的资源以代表您完成操作。服务相关角色显示在您的 IAM 账户中,并归该服务所有。IAM 管理员可以查看但不能编辑服务相关角色的权限。
服务角色
此功能允许服务代表您担任服务角色。此角色允许服务访问其它服务中的资源以代表您完成操作。服务角色显示在您的 IAM 账户中,并归该账户所有。这意味着,IAM 管理员可以更改该角色的权限。但是,这样做可能会中断服务的功能。