问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Azure NetApp文件中的NAS共享权限详解

创作时间:
作者:
@小白创作中心

Azure NetApp文件中的NAS共享权限详解

引用
1
来源
1.
https://learn.microsoft.com/zh-cn/azure/azure-netapp-files/network-attached-storage-permissions

Azure NetApp文件提供了多种保护NAS数据的方法,其中安全性的一个重要方面是权限管理。在NAS环境中,权限可以分为共享访问权限和文件访问权限两大类。本文将详细介绍这两种权限的管理方法,帮助管理员更好地保护NAS数据。

本文内容

Azure NetApp文件提供了几种保护NAS数据的方法。安全性的一个方面是权限。在NAS中,权限可以分为两个类别:

  • 共享访问权限限制谁可以装载NAS卷。NFS通过IP地址或主机名来控制共享访问权限。SMB通过用户和组访问控制列表(ACL)来控制此权限。
  • 文件访问权限限制用户和组在装载NAS卷后可以执行的操作。文件访问权限应用于单个文件和文件夹。

Azure NetApp文件权限依赖于NAS标准,可简化管理员和最终用户使用熟悉方法来保护NAS卷的过程。

注意:如果共享和文件上列出了冲突的权限,则会应用限制性最强的权限。例如,如果用户在共享级别具有只读访问权限,并且在文件级别具有完全控制权限,则用户会收到所有级别的读取访问权限。

共享访问权限

在NAS环境中要保护的初始入口点是对共享本身的访问。在大多数情况下,访问权限应仅限于需要访问共享的用户和组。使用共享访问权限,可以锁定谁甚至可以首先装载共享。

由于限制性最强的权限会替代其他权限,并且共享是卷的主要入口点(具有最少的访问控制),因此共享权限应遵守漏斗逻辑,其中共享允许具有比基础文件和文件夹更多的访问权限。漏斗逻辑执行更精细的限制性控制。

NFS导出策略

通过导出某个客户端或一组客户端可访问的路径,将Azure NetApp文件中的卷共享到NFS客户端。NFSv3和NFSv4.x使用相同的方法来限制对Azure NetApp文件中NFS共享的访问:导出策略。

导出策略是一组访问规则的容器,这些规则按所需访问的顺序列出。这些规则使用客户端IP地址或子网控制对NFS共享的访问。如果导出策略规则中未列出某个客户端(允许或明确拒绝访问),则该客户端无法装载NFS导出。由于规则是按顺序读取的,如果对某个客户端应用了更严格的策略规则(例如,通过子网),则会先读取并应用该规则。将忽略允许更多访问的后续策略规则。此图显示IP为10.10.10.10的客户端获得对卷的只读访问权限,因为子网0.0.0.0/0(每个子网中的每个客户端)设置为只读,并且在策略中列在第一位。

Azure NetApp文件中提供的导出策略规则选项

创建Azure NetApp文件卷时,可通过多种选项来控制对NFS卷的访问。

  • 索引:指定导出策略规则的评估顺序。如果某个客户端受策略中的多个规则控制,则第一条适用的规则将应用于该客户端,后续规则将被忽略。
  • 允许的客户端:指定规则应用于哪些客户端。此值可以是客户端IP地址、逗号分隔的IP地址列表,也可以是包含多个客户端的子网。Azure NetApp文件中不支持主机名和网络组值。
  • 访问权限:指定允许非根用户拥有的访问级别。对于未启用Kerberos的NFS卷,选项包括:只读、读写或无访问权限。对于已启用Kerberos的卷,选项包括:Kerberos 5、Kerberos 5i或Kerberos 5p。
  • 根访问权限:指定在给定客户端的NFS导出中如何处理根用户。如果设置为“开”,则根用户为root。如果设置为“关”,则根压缩成匿名用户ID65534。
  • chown模式:控制哪些用户可以对导出(chown)运行更改所有权命令。如果设置为“受限”,则只有根用户可以运行chown。如果设置为“不受限制”,则具有适当文件/文件夹权限的任何用户都可以运行chown命令。

Azure NetApp文件中的默认策略规则

创建新卷时,将创建默认策略规则。默认策略可防止在没有策略规则的情况下创建卷,这会限制任何尝试访问导出的客户端的访问权限。如果没有规则,则没有访问权限。

默认规则具有以下值:

  • 索引 = 1
  • 允许的客户端 = 0.0.0.0/0(所有允许访问的客户端)
  • 访问权限 = 读写
  • 根访问权限 = 开
  • Chown模式 = 受限

可以在创建卷时或在创建卷后更改这些值。

在Azure NetApp文件中启用NFS Kerberos的情况下导出策略规则

只能在Azure NetApp文件中使用NFSv4.1的卷上启用NFS Kerberos。Kerberos通过为NFS装载提供不同的加密模式来提供额外的安全性,具体取决于正在使用的Kerberos类型。

启用Kerberos后,导出策略规则的值将发生更改,以让你指定应允许使用的Kerberos模式。如果需要访问多个Kerberos安全模式,则可以在同一规则中启用它们。

这些安全模式包括:

  • Kerberos 5:仅对初始身份验证进行加密。
  • Kerberos 5i:用户身份验证加完整性检查。
  • Kerberos 5p:用户身份验证、完整性检查和隐私。所有数据包都将加密。

只有已启用Kerberos的客户端才能访问包含指定Kerberos的导出规则的卷;启用Kerberos后,不允许AUTH_SYS访问。

根压缩

在某些情况下,需要限制对Azure NetApp文件卷的根访问权限。由于根用户对NFS卷中的任何内容的访问权限不受限制——即使使用模式位或ACL显式拒绝对根的访问权限也是如此,限制根访问的唯一方法是告诉NFS服务器特定客户端的根用户不再是root。

在导出策略规则中,选择“根访问权限:关”,以将根压缩成非根匿名用户ID65534。这意味着,指定客户端上的根用户现在是用户ID65534(在NFS客户端上通常为nfsnobody),并且能够根据为该用户指定的ACL/模式位来访问文件和文件夹。对于模式位,访问权限通常属于“Everyone”访问权限。此外,受根压缩规则影响的客户端以“root”写入的文件会以nfsnobody:65534用户身份创建文件和文件夹。如果需要根用户为root,请将“根访问权限”设置为“开”。

若要详细了解如何管理导出策略,请参阅为NFS或双重协议卷配置导出策略。

导出策略规则排序

导出策略规则的顺序决定了它们的应用方式。列表中应用于NFS客户端的第一条规则是用于该客户端的规则。将CIDR范围/子网用于导出策略规则时,该范围内的NFS客户端可能会因为所包含的范围而接收到不需要的访问权限。

请考虑以下示例:

  • 通过使用将0.0.0.0/0用作允许的客户端条目的默认策略规则,索引中的第一条规则包括所有子网中的所有客户端。该规则允许对Azure NetApp文件NFSv3卷的所有客户端进行“读写”访问。
  • 索引中的第二条规则显式列出了NFS客户端10.10.10.10,并配置为将访问权限限制为“只读”,而没有根访问权限(根被压缩)。

事实表明,由于列表中的第一条规则,客户端10.10.10.10可接收访问权限。永远不会评估下一条规则的访问限制,因此即使需要“只读”,10.10.10.10也会获得读写访问权限。根也是root,而不是被压缩。

若要解决此问题并将访问权限设置为所需级别,可以对规则进行重新排序,以将所需客户端访问规则置于任何子网/CIDR规则之上。可以在Microsoft Azure门户中对导出策略规则进行重新排序,方法是拖动规则或使用每个导出策略规则行中...菜单中的“移动”命令。

注意:只能使用Azure NetApp文件CLI或REST API添加或删除导出策略规则。

SMB共享

SMB共享使最终用户能够访问Azure NetApp文件中的SMB或双重协议卷。在Azure NetApp文件控制平面中,SMB共享的访问控制仅限于SMB安全选项,例如基于访问权限的枚举和不可浏览的共享功能。在卷创建过程中,可使用编辑卷功能来配置这些安全选项。

共享级别权限ACL是通过Windows MMC控制台而不是Azure NetApp文件进行管理的。

与安全相关的共享属性

Azure NetApp文件提供多个共享属性来增强管理员的安全性。

基于访问权限的枚举

基于访问权限的枚举是一项Azure NetApp文件SMB卷功能,它将SMB中文件和文件夹的枚举(即列出内容)仅限制为对共享具有所允许访问权限的用户。例如,如果用户对已启用基于访问权限的枚举的共享中的文件或文件夹没有读取权限,则该文件或文件夹不会显示在目录列表中。在以下示例中,用户(smbuser)无权读取Azure NetApp文件SMB卷中名为“ABE”的文件夹。只有contosoadmin具有访问权限。

在下面的示例中,已禁用基于访问权限的枚举,因此用户有权访问SMBVolume的ABE目录。

在下一个示例中,已启用基于访问权限的枚举,因此不会向用户显示SMBVolume的ABE目录。

该权限还扩展到单个文件。在下面的示例中,已禁用基于访问权限的枚举,并且ABE-file已向用户显示。

启用基于访问权限的枚举后,ABE-file不会向用户显示。

不可浏览的共享

通过隐藏Windows资源管理器中的视图或在“net view”中列出共享时,Azure NetApp文件中不可浏览的共享功能可限制客户端浏览SMB共享。只有知道共享绝对路径的最终用户才能找到共享。

在下图中,没有为SMBVolume启用不可浏览的共享属性,因此卷会显示在文件服务器列表中(使用\servername)。

在Azure NetApp文件中的SMBVolume上启用不可浏览的共享时,文件服务器的同一视图将排除SMBVolume。

在下一个图像中,共享SMBVolume在Azure NetApp文件中启用了不可浏览的共享。启用它后,这是文件服务器的顶级视图。

即使无法在列表中看到卷,但如果用户知道文件路径,则仍然可访问它。

SMB3加密

SMB3加密是一项Azure NetApp文件SMB卷功能,它为SMB客户端强制执行有线加密,以便在NAS环境中提高安全性。下图显示了禁用SMB加密时网络流量的屏幕截图。文件名和文件句柄等敏感信息可见。

启用SMB加密后,数据包将标记为“已加密”,并且用户将看不到任何敏感信息。相反,它显示为“加密的SMB3数据”。

SMB共享ACL

SMB共享可以控制谁能够装载和访问共享,以及控制对Active Directory域中用户和组的访问级别。评估的第一级权限是共享访问控制列表(ACL)。

SMB共享权限比文件权限更基本:它们只应用读取、更改或完全控制。共享权限可以被文件权限覆盖,文件权限可以被共享权限覆盖;限制性最强的权限是应遵守的权限。例如,如果组“Everyone”被授予对共享的完全控制权限(默认行为),并且特定用户通过文件级ACL对文件夹具有只读访问权限,则读取访问权限将应用于这些用户。ACL中未显式列出的任何其他用户都具有完全控制权限

相反,如果特定用户的共享权限设置为“读取”,但该用户的文件级权限设置为完全控制,则会强制执行“读取”访问权限。

在双重协议NAS环境中,SMB共享ACL仅适用于SMB用户。NFS客户端利用导出策略和规则来实现共享访问规则。因此,控制文件和文件夹级别的权限优先于共享级别ACL,尤其是对于双重协议NAS卷。

若要了解如何配置ACL,请参阅在Azure NetApp文件中管理SMB共享ACL。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号