管理 Amazon EFS 资源的访问权限概述 - Amazon Elastic File System
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

管理 Amazon EFS 资源的访问权限概述

每个 AWS 资源都归某个 AWS 账户所有,创建和访问资源的权限由权限策略进行管理。账户管理员可以向 IAM 身份(即:用户、组和角色)附加权限策略。一些服务(包括 Amazon EFS)还支持向资源附加权限策略。

注意

账户管理员 (或管理员用户) 是具有管理员权限的用户。有关更多信息,请参阅 IAM 用户指南 中的 IAM 最佳实践

在授予权限时,您要决定谁获得权限,获得对哪些资源的权限,以及您允许对这些资源执行的具体操作。

Amazon EFS 的资源和操作

在 Amazon EFS 中,主要资源是文件系统。Amazon EFS 还支持其他资源类型,例如挂载目标访问点。不过,对于 Amazon EFS,您只能在现有文件系统的上下文内创建挂载目标和访问点。挂载目标和访问点称为子资源

这些资源和子资源具有与其关联的唯一 Amazon 资源名称 (ARN),如下表所示。

资源类型 ARN 格式
文件系统 arn:aws:elasticfilesystem:region:account-id:file-system/file-system-id
访问点 arn:aws:elasticfilesystem:region:account-id:access-point/access-point-id

Amazon EFS 提供一组操作用来处理 Amazon EFS 资源。有关可用操作的列表,请参阅 Amazon EFS ActionsNFS 客户端的 EFS 操作

了解资源所有权

AWS 账户对在该账户下创建的资源具有所有权,而无论创建资源的人员是谁。具体而言,资源所有者是对资源创建请求进行身份验证的委托人实体 (即根账户、IAM 用户或 IAM 角色) 的 AWS 账户。以下示例说明了它的工作原理:

  • 如果使用您的 AWS 账户的根账户凭证来创建文件系统,则您的 AWS 账户就是该资源的所有者 (在 Amazon EFS 中,资源就是文件系统)。

  • 如果您在您的 AWS 账户中创建 IAM 用户并向该用户授予创建文件系统的权限,则该用户可以创建文件系统。但是,您的 AWS 账户 (即该用户所属的账户) 拥有该文件系统资源。

  • 如果您在您的 AWS 账户中创建具有文件系统创建权限的 IAM 角色,则能够担任该角色的任何人都可以创建文件系统。角色所属的 AWS 账户拥有该文件系统资源。

管理对资源的访问

权限策略 规定谁可以访问哪些内容。下一节介绍创建权限策略时的可用选项。

注意

本节介绍如何在 Amazon EFS 范围内使用 IAM。这里不提供有关 IAM 服务的详细信息。有关完整IAM文档,请参阅 什么是IAM?IAM 用户指南. 有关 IAM 策略语法和介绍的信息,请参阅 https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies.html中的 IAM 用户指南 IAM 策略参考

附加到 IAM 身份的策略称为基于身份的 策略(IAM 策略),而附加到资源的策略称为基于资源的 策略。Amazon EFS 支持基于身份的策略和基于资源的策略。

基于身份的策略(IAM 策略)

您可以将策略附加到 IAM 身份,以控制对 EFS API 的访问或控制 NFS 客户端访问。例如,要向用户授予创建 Amazon EFS 资源(例如文件系统)的权限,您可以将权限策略附加到用户或用户所属的组。

有关使用 IAM 委派权限的更多信息,请参阅 https://docs.amazonaws.cn/IAM/latest/UserGuide/access.html 中的IAM 用户指南访问权限管理

以下是允许用户对您的 AWS 账户执行 CreateFileSystem 操作的示例策略。

{ "Version": "2012-10-17", "Statement": [ { "Sid" : "Stmt1EFSpermissions", "Effect": "Allow", "Action": [ "elasticfilesystem:CreateFileSystem", "elasticfilesystem:CreateMountTarget" ], "Resource": "arn:aws:elasticfilesystem:us-west-2:account-id:file-system/*" }, { "Sid" : "Stmt2EC2permissions", "Effect": "Allow", "Action": [ "ec2:DescribeSubnets", "ec2:CreateNetworkInterface", "ec2:DescribeNetworkInterfaces" ], "Resource": "*" } ]

有关对 Amazon EFS使用基于身份的策略的更多信息,请参阅控制对 EFS API 的访问。有关用户、组、角色和权限的更多信息,请参阅 IAM 用户指南 中的身份(用户、组和角色)。

基于资源的策略

您可以使用文件系统策略控制API访问和NFS客户端访问文件系统。 Amazon EFS 支持基于资源的文件系统策略,称为A FileSystemPolicy...使用EFS FileSystemPolicy 您可以指定谁对文件系统以及他们可以对其执行的操作进行访问。通过使用文件系统策略,您可以轻松地控制对文件系统的访问,并让您在每个文件系统的基础上向其他账户授予使用权限。以下文件系统策略向所有 AWS IAM 委托人授予 ClientMount 或只读权限。

{ "Version": "2012-10-17", "Id": "read-only-example-policy02", "Statement": [ { "Sid": "efs-statement-example02", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "elasticfilesystem:ClientMount" ] } ] }

指定策略元素: 行动、效果和负责人

对于每个 Amazon EFS 资源(请参阅Amazon EFS 的资源和操作),此服务定义了一组操作 API 操作(请参阅 ActionsNFS 客户端的 EFS 操作),您可以授予执行这些操作的权限。对于 Amazon EFS 文件系统资源,示例操作包括: CreateFileSystemDeleteFileSystem,和 DescribeFileSystems...执行API操作可以要求对多个操作进行权限。

以下是最基本的策略元素:

  • 资源 – 在基于资源的策略(文件系统策略)中,策略附加到的资源是隐式资源。对于基于身份的策略,您可以使用 Amazon 资源名称 (ARN) 标识策略应用到的资源。有关更多信息,请参阅 Amazon EFS 的资源和操作。)

  • 操作 – 您可以使用操作关键字标识要允许或拒绝的资源操作。例如,根据指定的效果 elasticfilesystem:CreateFileSystem,Amazon EFS 允许或拒绝执行 CreateFileSystem 操作的用户权限。

  • Effect – 您可以指定当用户请求特定操作(可以是允许或拒绝)时的效果—。如果没有显式授予允许资源的访问权限,则隐式拒绝访问。您也可显式拒绝对资源的访问,这样可确保用户无法访问该资源,即使有其他策略授予了访问权限的情况下也是如此。

  • Principal – 在基于身份的策略(IAM 策略)中,附加了策略的用户是隐式委托人。对于基于资源的策略,您可以指定要接收权限的用户、账户、服务或其他实体(仅适用于基于资源的策略)。

了解更多有关 IAM 策略语法和描述,请参阅 IAM政策参考IAM 用户指南.

有关显示所有 Amazon EFS API 操作的表,请参阅 Amazon EFSAPI 权限 行动、资源和条件参考

有关显示所有 Amazon EFS NFS 客户端操作的表,请参阅 使用 IAM 控制 NFS 对 Amazon EFS 的访问

在策略中指定条件

当您授予权限时,可使用 IAM 策略语言来指定规定策略何时生效的条件。有关指定策略中条件的详细信息,请参阅 IAMJSON政策要素: 条件IAM 用户指南.

您可以酌情使用特定于 EFS 的条件键和 AWS 范围的条件键。有关 AWS 范围内的键的完整列表,请参阅 https://docs.amazonaws.cn/IAM/latest/UserGuide/reference_policies_elements.html#AvailableKeys 中的IAM 用户指南条件的可用键。有关特定于 EFS 服务的条件键的完整列表,请参阅NFS 客户端的 EFS 条件键

注意

aws:SourceIp AWS 范围的条件可用于控制哪些主机能够使用 EFS 操作,例如 CreateFileSystemCreateMountTargetDeleteMountTargetDescribeMountTargetSecurityGroupsModifyMountTargetSecurityGroup 操作。aws:SourceIp 条件不能用于控制对 EFS 装载目标进行的 NFS 访问。要控制对 EFS 装载目标进行的访问,请参阅控制 NFS 客户端对 Amazon EFS 文件系统的网络访问