IAM 代表身份和访问管理,可帮助控制谁可以进入云、访问 AWS 资源以及进入后可以做什么。
-
身份: IAM 帮助管理可以与 AWS 资源交互的身份(如用户名或服务帐户)。
-
访问:它决定每个身份可以在 AWS 服务上执行哪些操作(例如读取、写入或删除数据)。
IAM 的特点:
-
控制谁做什么: IAM 决定谁可以访问 AWS 资源以及他们可以用这些资源做什么。
-
使用 MFA 提供额外的安全性:可以要求用户使用第二种验证形式(例如智能手机应用程序)以及密码来增加额外的安全性。
-
简化服务访问: IAM 允许 AWS 服务安全地访问其他服务,从而减少了对密钥的需求。
-
微调权限:可以精确指定每个用户或组可以访问的内容,确保他们只拥有他们需要的权限。
-
访问顾问洞察: IAM 提供对权限的洞察,帮助了解用户和服务正在使用的内容并相应地调整权限。
IAM 身份分为三类:
-
IAM 用户
-
IAM 组
-
IAM 角色
IAM 用户:
IAM 用户是 AWS 账户中的个人实体。他们是需要与AWS 资源交互的人类用户、应用程序或服务。以下是 IAM 用户的分类:
-
标识:每个 IAM 用户都有一个唯一的用户名,用于身份验证。创建 IAM 用户时,可以选择一个有助于识别用户的用户名,例如“John”或“MarketingApp”。
-
访问凭证:IAM 用户可以拥有访问凭证,包括用于编程访问的密码或访问密钥(访问密钥 ID 和秘密访问密钥)。密码用于 AWS 管理控制台,而访问密钥用于通过 API 或 AWS CLI 进行编程访问。
-
权限:用户可以附加策略,定义他们可以对哪些 AWS 资源执行哪些操作。这些策略控制对 AWS 服务的访问级别。
-
多重身份验证 (MFA):可以为 IAM 用户启用 MFA,这会增加一层额外的安全保护。它要求用户除了提供密码外,还提供第二个身份验证因素,通常是硬件令牌或智能手机应用程序。
IAM 组:
IAM 组是 IAM 用户的集合。是一种简化需要相同访问级别的多个用户的权限管理的方法。IAM 组的工作原理如下:
-
组成员身份:用户可以添加到一个或多个组。当有一组具有相似工作角色或职责的用户时,此功能非常有用,因为可以将他们添加到定义其共同权限的组中。
-
策略附加:无需将策略附加到单个用户,而是将策略附加到 IAM 组。组中的所有用户都会继承组策略中定义的权限。这样可以更轻松地确保具有相似角色的用户具有一致的访问权限。
-
可扩展性和效率:IAM 组使权限管理更加高效。如果需要一次更改多个用户的权限,则可以更新组的策略,所有组成员都会收到更改。
IAM 角色:
IAM 角色与用户和组略有不同。它们适用于需要授予 AWS 服务权限、受信任实体的临时访问权限或跨账户访问的情况。IAM 角色的工作原理如下:
-
信任关系:角色通过信任关系定义,指定哪些实体或服务可以承担该角色。例如可以创建一个允许 EC2 实例访问 S3 存储桶的角色。
-
临时权限:角色提供临时访问权限。当用户或服务承担某个角色时,他们会收到临时安全凭证,这些凭证在有限的时间内有效。这增加了一层安全性,可以为角色的使用期限设置特定权限。
-
跨账户访问:当想要授予另一个 AWS 账户访问资源的权限时,可以使用角色。另一个账户将承担该角色,以安全地访问资源,而无需共享访问密钥。
总之,IAM 用户是具有自己的凭证和权限的独立实体。IAM 组帮助集体管理具有类似权限的用户。IAM 角色用于授予对 AWS 服务或实体的临时、受控访问权限,并可用于跨账户访问。这些 IAM 组件共同能够高效地管理和保护对 AWS 资源的访问。
在云上(OnCloud AI)(https://www.oncloudai.com/) 一直专注于企业上云转型和出海数字化服务。如有需求即可点击链接了解详情。