本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用策略管理访问
您可以 AWS 通过创建策略并将其附加到 AWS 身份或资源来控制中的访问权限。策略是其中的一个对象 AWS ,当与身份或资源关联时,它会定义其权限。 AWS 在委托人(用户、root 用户或角色会话)发出请求时评估这些策略。策略中的权限确定是允许还是拒绝请求。大多数策略都以JSON文档的 AWS 形式存储在中。有关JSON策略文档结构和内容的更多信息,请参阅《IAM用户指南》中的JSON策略概述。
管理员可以使用 AWS JSON策略来指定谁有权访问什么。也就是说,哪个主体可以对什么资源执行操作,以及在什么条件下执行。
默认情况下,用户和角色没有权限。要授予用户对其所需资源执行操作的权限,IAM管理员可以创建IAM策略。然后,管理员可以将IAM策略添加到角色中,用户可以代入这些角色。
IAM无论您使用何种方法执行操作,策略都会定义该操作的权限。例如,假设您有一个允许 iam:GetRole
操作的策略。拥有该策略的用户可以从 AWS Management Console AWS CLI、或中获取角色信息 AWS
API。
基于身份的策略
基于身份的策略是可以附加到身份(例如IAM用户、用户组或角色)的JSON权限策略文档。这些策略控制用户和角色可在何种条件下对哪些资源执行哪些操作。要了解如何创建基于身份的策略,请参阅IAM用户指南中的使用客户托管策略定义自定义IAM权限。
基于身份的策略可以进一步归类为内联策略或托管策略。内联策略直接嵌入单个用户、组或角色中。托管策略是独立的策略,您可以将其附加到中的多个用户、群组和角色 AWS 账户。托管策略包括 AWS 托管策略和客户托管策略。要了解如何在托管策略或内联策略之间进行选择,请参阅《IAM用户指南》中的在托管策略和内联策略之间进行选择。
其他策略类型
AWS 支持其他不太常见的策略类型。这些策略类型可以设置更常用的策略类型向您授予的最大权限。
-
权限边界-权限边界是一项高级功能,您可以在其中设置基于身份的策略可以向IAM实体(IAM用户或角色)授予的最大权限。您可为实体设置权限边界。这些结果权限是实体基于身份的策略及其权限边界的交集。在
Principal
中指定用户或角色的基于资源的策略不受权限边界限制。任一项策略中的显式拒绝将覆盖允许。有关权限边界的更多信息,请参阅《IAM用户指南》中的IAM实体的权限边界。 -
服务控制策略 (SCPs)-SCPs 是为中的组织或组织单位 (OU) 指定最大权限的JSON策略 AWS Organizations。 AWS Organizations 是一项用于对您的企业拥有的多 AWS 账户 项进行分组和集中管理的服务。如果您启用组织中的所有功能,则可以将服务控制策略 (SCPs) 应用于您的任何或所有账户。对成员账户中的实体(包括每个实体)的权限进行了SCP限制 AWS 账户根用户。有关 Organization SCPs s 和的更多信息,请参阅《AWS Organizations 用户指南》中的服务控制策略。
-
会话策略 – 会话策略是当您以编程方式为角色或联合用户创建临时会话时作为参数传递的高级策略。结果会话的权限是用户或角色的基于身份的策略和会话策略的交集。权限也可以来自基于资源的策略。任一项策略中的显式拒绝将覆盖允许。有关更多信息,请参阅《IAM用户指南》中的会话策略。
多个策略类型
当多个类型的策略应用于一个请求时,生成的权限更加复杂和难以理解。要了解在涉及多种策略类型时如何 AWS 确定是否允许请求,请参阅IAM用户指南中的策略评估逻辑。