繁体   English   中英

如何在Linux中创建具有特定安全权限的文件? (即相当于Win32 CreateFile + SECURITY_ATTRIBUTES)

[英]How to create files with specific security permissions in Linux? (i.e. the equivalent of Win32 CreateFile+SECURITY_ATTRIBUTES)

使用Windows的Win32 API,可以使用CreateFile()创建文件并为其分配适当的安全权限(例如,某些用户可以读取和写入文件,另一组中的其他用户只能读取但不能写入等)。及其SECURITY_ATTRIBUTES参数。

Linux是否提供类似的功能? 为此应使用哪些功能和数据结构?
(我可能会丢失一些内容,但是经典的C fopen()似乎没有提供类似的安全许可设置功能...)

编辑
为了澄清起见,我正在寻找Windows ACL之类的东西。

Linux下的最新文件系统支持ACL。

但是,在挂载文件系统时,需要通过/etc/fstab的相应条目来启用ACL支持。

要从命令行获取并设置ACL,请使用

有关如何以编程方式访问ACL的信息,请参见man 5 acl

如果您要查找文件属性和所有权,则可以使用chmod()或fchmod()以及chown()或fchown() 还有SELinux,它具有setfilecon()和其他一些API函数。 请注意,并非每台Unix计算机都启用了SELinux。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM