本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Windows ACL 限制 SMB 文件共享访问权限
Amazon S3 文件网关支持两种不同的方法来控制对通过 SMB 文件共享存储的文件和目录的访问:POSIX 权限或 Windows ACL。
本节介绍如何在采用 Microsoft Active Directory(AD)进行身份验证的 SMB 文件共享上使用 Microsoft Windows 访问控制列表(ACL)。通过使用 Windows ACL,您可以为 SMB 文件共享中的文件和文件夹设置精细控制权限。
下面是 SMB 文件共享上的 Windows ACL 的一些重要特征:
-
当您的文件网关加入 Active Directory 域时,系统会默认为 SMB 文件共享选择 Windows ACL。
-
激活 ACL 时,ACL 信息将保留在 Amazon S3 对象元数据中。
-
对于每个文件或文件夹,网关保留最多 10 个 ACL。
-
当您使用已激活 ACL 的 SMB 文件共享来访问在网关外创建的 S3 对象时,对象将从父文件夹继承 ACL 的信息。
注意
SMB 文件共享的默认根 ACL 为每个人提供完全访问权限,不过您可以更改根 ACL 的权限。您可以使用根 ACL 来控制对文件共享的访问。您可以设置谁可以挂载文件共享(映射驱动器)以及用户在文件共享中递归地获取文件和文件夹的哪些权限。但是,我们建议您在 S3 存储桶中的顶级文件夹上设置此权限,以便保留 ACL。
当你使用 CreateSMBFileShareAPI 操作创建新的 SMB 文件共享时,你可以打开 Windows ACL。或者,您可以使用 UpdateSMBFileShareAPI 操作在现有 SMB 文件共享上启用 Windows ACL。
在新 SMB 文件共享上激活 Windows ACL
执行以下步骤以在新的 SMB 文件共享上激活 Windows ACL。
在创建新的 SMB 文件共享时激活 Windows ACL
-
创建文件网关(如果您还没有)。有关更多信息,请参阅 创建网关。
-
如果网关未加入域,请将其添加到域中。有关更多信息,请参阅使用 Active Directory 对用户进行身份验证。
-
创建 SMB 文件共享。有关更多信息,请参阅
-
从 Storage Gateway 控制台激活文件共享上的 Windows ACL。
要使用 Storage Gateway 控制台,请执行以下操作:
-
选择文件共享,然后选择 Edit file share (编辑文件共享)。
-
对于File/directory 访问控制者选项,请选择 Windows 访问控制列表。
-
-
(可选)如果您希望管理员用户有权更新文件共享中所有文件和文件夹的 ACL,请将管理员用户添加到。AdminUsersList
注意
如果您在 SMB 文件共享的设置中配置了允许和拒绝的用户和组列表,那么 ACL 将不会授予任何覆盖该列表的访问权限。
在 ACL 之前评估允许和拒绝的用户和组列表,并控制哪些用户可以挂载或访问文件共享。如果任何用户或组被添加到允许列表中,则该列表被视为处于激活状态,只有这些用户才能挂载文件共享。
用户挂载文件共享后,ACL 会提供更精细的保护,控制用户可以访问哪些特定文件或文件夹。
-
更新根文件夹下父文件夹的 ACL。为此,请使用 Windows 文件资源管理器在 SMB 文件共享中的文件夹上配置 ACL。
注意
如果在根目录而不是根目录下的父文件夹上配置 ACL,则 ACL 权限不会保留在 Amazon S3 中。
我们建议在文件共享根目录下的顶级文件夹中设置 ACL,而不是直接在文件共享的根目录下设置 ACL。这种方法将信息作为对象元数据保存在 Amazon S3 中。
-
根据需要开启继承。
注意
您可以为 2019 年 5 月 8 日之后创建的文件共享开启继承。
如果开启继承并以递归方式更新权限,则 Storage Gateway 会更新 S3 存储桶中的所有对象。根据存储桶中的对象数量,更新可能需要一段时间才能完成。
在现有的 SMB 文件共享上激活 Windows ACL
执行以下步骤以在具有 POSIX 权限的现有 SMB 文件共享上激活 Windows ACL。
使用 Storage Gateway 控制台在现有 SMB 文件共享上激活 Windows ACL
-
选择文件共享,然后选择 Edit file share (编辑文件共享)。
-
对于File/directory 访问控制者选项,请选择 Windows 访问控制列表。
-
根据需要开启继承。
注意
我们不建议在根级别设置 ACL,因为如果执行此操作并删除您的网关,则需要再次重置 ACL。
如果开启继承并以递归方式更新权限,则 Storage Gateway 会更新 S3 存储桶中的所有对象。根据存储桶中的对象数量,更新可能需要一段时间才能完成。
使用 Windows ACL 时的限制
使用 Windows ACL 控制对 SMB 文件共享的访问时,请记住以下限制:
-
仅当使用 Windows SMB 客户端访问文件共享时,如果文件共享使用 Active Directory 进行身份验证,才支持 Windows ACL。
-
文件网关针对每个文件和目录最多支持 10 个 ACL 条目。
-
文件网关不支持
Audit和Alarm条目,即系统访问控制列表(SACL)条目。文件网关支持Allow和Deny条目,即自由访问控制列表(DACL)条目。 -
文件网关不支持高级访问控制条目(ACE)权限。
-
SMB 文件共享的根 ACL 设置仅针对该网关,并且设置将在网关更新和重新启动后保持不变。
注意
如果在根目录而不是根目录下的父文件夹上配置 ACL,则 ACL 权限不会保留在 Amazon S3 中。
在给定以下条件的情况下,请确保执行以下操作:
-
如果将多个网关配置为访问同一个 Amazon S3 存储桶,请在每个网关上配置根 ACL 以使权限保持一致。
-
如果您删除文件共享并在同一个 Amazon S3 存储桶上重新创建,请确保使用的是同一组根 ACL。
-