![通过 Apple 文件协议 (AFP) 进行的 Matlab 计算依赖于 POSIX 权限,忽略 ACL](https://linux22.com/image/553391/%E9%80%9A%E8%BF%87%20Apple%20%E6%96%87%E4%BB%B6%E5%8D%8F%E8%AE%AE%20(AFP)%20%E8%BF%9B%E8%A1%8C%E7%9A%84%20Matlab%20%E8%AE%A1%E7%AE%97%E4%BE%9D%E8%B5%96%E4%BA%8E%20POSIX%20%E6%9D%83%E9%99%90%EF%BC%8C%E5%BF%BD%E7%95%A5%20ACL.png)
我是一名系统管理员,从未使用过 Matlab,所以请原谅我对该程序的无知。
我的用户在通过 AFP 向 Mac OS X Server 10.6.7 执行脚本化的 Matlab 操作时遇到了问题,其中访问控制列表 (ACL) 应该允许操作,但 POSIX 样式的权限不允许该活动。
似乎在 Mac 工作站上本地运行的 Matlab 会完全忽略 ACL。这是仅有的我见过的应用程序从未出现过这种情况。服务器的文件系统是 HFS+J,所有其他活动都按预期执行。由于我们与外部目录系统集成,这些用户无法使用 CIFS。
在此示例中,目录 bxdata,组 cibturner 的成员应该能够修改文件。事实上,他们可以使用除 Matlab 脚本之外的任何其他方法。当 Matlab 脚本访问这些文件时,POSIX 权限 644 不允许修改。就好像 ACL 无关紧要一样。
[root@cib 16:00:24 /14181.2_5sM]# ls -leh@ bxdata/
total 128
-rw-r--r--+ 1 kel32 staff 18K Feb 15 09:31 TS-5sMath030708-21073-1.edat
0: group:cibturner inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown
1: group:cibsrlocaladmins inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown
2: group:crcservergroup inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown
-rw-r--r--+ 1 kel32 staff 25K Feb 15 09:31 TS-5sMath030708-21073-1.txt
0: group:cibturner inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown
1: group:cibsrlocaladmins inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown
2: group:crcservergroup inherited allow read,write,execute,append,readattr,writeattr,readextattr,writeextattr,readsecurity,writesecurity,chown
由于此服务器包含 HIPAA 数据,因此安全性至关重要。我们不使用联网主目录或 SAN 技术。MatLab 程序在用户的硬盘上运行;访问权限通过 Kerberized AFP 授予。
答案1
尝试更改 POSIX 权限以删除全局读取位 (750) 并将所有权更改为 root:wheel。当 (至少) 设置了全局读取位时,我遇到了很多 ACLS 的奇怪行为。
是的,我知道 ACL 应该取代任何 POSIX 权限,但我发现在现实世界中情况并非总是如此。