当卷安全模式不是协议原生的时,ONTAP 如何为 NFS 和 CIFS 客户端生成权限?
适用场景
ONTAP 9
问题解答
NFS 客户端访问 NTFS 安全文件/文件夹
NTFS ACL 会被转换为 Unix 模式位的最低权限变体,并应用于“所有者”、“所有者组”和“其他”字段,就像应用于发出请求的用户一样。文件的所有权由写入所有权信息的映射用户的 UID 和 GID 决定。“其他”字段可能存在,具体取决于等效 SID 是否具有显式权限(例如“所有人”)。 如果管理员为对象分配任意所有者,这可能会导致一些混淆,因为生成的 Unix 权限将反映其映射,而不是新所有者的权限。
以下访问掩码将直接转换为模式位:
- 读取并执行(rx)、
- 读取(r--)、
- 写入(-w-)、
- 修改(rwx)、
- 完全控制(rwx)、
- 遍历文件夹/执行文件(--x)、
- 创建文件/写入数据(-w-)、
- 列出文件夹/读取数据(r--)
其他特殊权限无法直接转换为 Unix 模式位。在这种情况下,仅使用模式位无法表达客户端执行此类操作的能力。
CIFS 客户端访问 UNIX 安全文件/文件夹
当 cifs 选项-is-unix-nt-acl-enabled
设置为 true (默认)。
这些字段默认被转换成假的 SID,显示
- UNIXPermUid\用户
- UNIXPermGid\组
- 其他
- 当前访问用户
当前访问用户的条目代表用户的有效权限,而不是文件/文件夹上应用的权限。
与模式位相比,生成的 NTFS ACL 看起来更加宽松,因为其中有些权限无需转换。ONTAP会尝试通过这种转换来满足客户端的期望 - 如果 Windows 用户的映射用户将获得 rwx 权限,那么该用户实际上将拥有完全控制 ACL,即使这提供了 Unix 用户无法通过模式位明确授予的特殊权限。
当写入权限时,会执行这两种翻译。
追加信息
SID/前缀
|
占位符名称
|
S-1-5-21-2038298172-1297133386-11111-<uid 编号>
|
UNIXPermUid
|
S-1-5-21-2038298172-1297133386-22222-<gid编号>
|
UNIXPermGid
|
S-1-5-21-2038298172-1297133386-33333
|
UNIXPerm\其他
|