本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用MicrosoftWindows ACLs 控制对SMB文件共享的访问
在本节中,您可以找到有关如何在使用 Microsoft Active Directory (AD) 启用的 SMB 文件共享上使用 Microsoft Windows 访问控制列表 (ACL) 的信息。使用Windows ACLs,您可以在SMB文件共享中对文件和文件夹设置细粒度权限。
默认情况下,文件网关支持 POSIX 权限,以控制对通过 NFS 或 SMB 文件共享存储的文件和目录的访问。对于通过SMB文件共享存储的文件和目录,文件网关允许您使用Windows ACLs 而不是POSIX权限来控制访问。这种类型的访问控制可模拟Windows ACLs 本地Windows文件共享。
以下是Windows的一些重要特征 ACLs 在SMB文件共享上:
-
默认情况下,Windows ACLs SMB文件共享未启用。如何启用Windows ACLs,设置 SmbAclEnabled 选项
true
使用 UpdateSMBFileShare 操作 Storage Gateway SDK或 AWS CLI. -
何时 ACLs 已启用,ACL信息将保留在 Amazon S3 对象元数据。
-
网关最多可保留10个 ACLs 每个文件或文件夹。
-
当您使用启用的SMB文件共享时, ACLs 访问在网关外部创建的S3对象,对象继承 ACLs'信息来自父文件夹。
-
SMB 文件共享的默认根 ACL 为每个人提供完全访问权限,不过您可以更改根 ACL 的权限。您可以使用根目录 ACLs 以控制对文件共享的访问。您可以设置谁可以挂载文件共享(映射驱动器)以及用户在文件共享中递归地获取文件和文件夹的哪些权限。但是,我们建议您在 S3 存储桶中的顶级文件夹上设置此权限,以便保留 ACL。
您可以启用Windows ACLs 当您使用 CreateSMBFileShare API操作。或者您可以启用Windows ACLs 现有SMB文件共享时,使用 UpdateSMBFileShare API操作。
启用Windows ACLs 新的SMB文件共享
执行以下步骤以启用Windows ACLs 新的SMB文件共享。
如何启用Windows ACLs 创建新的SMB文件共享时
-
创建文件网关(如果您还没有)。有关更多信息,请参阅创建文件网关。
-
如果网关未加入域,请将其添加到域中。有关更多信息,请参阅使用 Active Directory 对用户进行身份验证。
-
创建 SMB 文件共享。有关更多信息,请参阅创建文件共享。
-
通过 Storage Gateway 控制台在文件共享上启用 Windows ACL。
要使用 Storage Gateway 控制台,请执行以下操作:
-
选择文件共享,然后选择 Edit file share (编辑文件共享)。
-
对于 File/directory access controlled by (文件/目录访问控制方式) 选项,选择 Windows Access Control List (Windows 访问控制列表)。
-
-
(可选)将管理员用户添加到 AdminUsersList,如果您希望管理员用户具有更新的权限 ACLs 文件中的所有文件和文件夹共享。
-
更新 ACLs 根文件夹下的父文件夹。要执行此操作,请使用Windows文件资源管理器配置 ACLs 在SMB文件中的文件夹上共享。
注意 如果您配置了 ACLs 在根目录下而不是根目录下的父文件夹,ACL权限不会在 Amazon S3.
我们建议设置 ACLs 在文件共享根目录下的顶级文件夹,而不是设置 ACLs 直接在文件共享的根目录下。这种方法将信息作为对象元数据保存在 Amazon S3 中。
-
根据需要启用继承。
注意 您可以为 2019 年 5 月 8 日之后创建的文件共享启用继承。
如果启用继承并以递归方式更新权限,则 Storage Gateway 会更新 S3 存储桶中的所有对象。根据存储桶中的对象数量,更新可能需要一段时间才能完成。
启用Windows ACLs 现有SMB文件共享
执行以下步骤以启用Windows ACLs 具有POSIX权限的现有SMB文件共享。
如何启用Windows ACLs 现有SMB文件共享,使用 Storage Gateway 控制台
-
选择文件共享,然后选择 Edit file share (编辑文件共享)。
-
对于 File/directory access controlled by (文件/目录访问控制方式) 选项,选择 Windows Access Control List (Windows 访问控制列表)。
-
根据需要启用继承。
注意 我们不建议设置 ACLs 在根级别,因为如果执行此操作并删除网关,您需要重置 ACLs 再次。
如果启用继承并以递归方式更新权限,则 Storage Gateway 会更新 S3 存储桶中的所有对象。根据存储桶中的对象数量,更新可能需要一段时间才能完成。
使用Windows时的限制 ACLs
使用Windows时请记住以下限制 ACLs 以控制SMB文件共享的访问:
-
窗户 ACLs 仅在使用WindowsSMB客户端访问文件共享时为ActiveDirectory启用的文件共享中受支持。
-
文件网关针对每个文件和目录最多支持 10 个 ACL 条目。
-
文件网关不支持
Audit
和Alarm
条目,它们是系统访问控制列表 (SACL) 条目。文件网关支持Allow
和Deny
条目,它们是自由访问控制列表 (DACL) 条目。 -
SMB 文件共享的根 ACL 设置仅针对该网关,并且设置将在网关更新和重新启动后保持不变。
注意 如果您配置了 ACLs 在根目录下而不是根目录下的父文件夹,ACL权限不会在 Amazon S3.
在给定以下条件的情况下,请确保执行以下操作:
-
如果将多个网关配置为访问同一个 Amazon S3 存储桶,请在每个网关上配置根 ACL 以保持权限一致。
-
如果您删除文件共享并在同一位置重新创建 Amazon S3 桶中,确保使用相同的根组 ACLs.
-