【发布时间】:2014-01-14 09:22:38
【问题描述】:
我想保护我的字符设备免受应用程序操作的影响。 我希望只有特定的应用程序才能在设备上进行操作。
我该怎么做?
谢谢
【问题讨论】:
-
您如何确定您的应用程序正在访问它?
-
这就是我要问的......
-
*nix 中的基本安全性使用文件权限和所有权。打印机端口归 lpadmin 所有以限制访问。以类似的方式,只允许 rw 访问 char 设备节点到拥有该应用程序的相同唯一用户名和组。但是,如果您正在寻找无法击败的东西,那么您需要寻找安全加密狗,即硬件解决方案。
-
我正在编写char设备,我可以只定义一个特定的唯一应用程序名称,而拒绝所有其他的吗?当应用程序打开设备文件时我会查询进程名称,如果没有匹配我会返回-ENODEV
-
您需要使用 SELinux。无法在设备级别限制访问。没有任何 Linux 设备驱动程序有任何关于执行设备操作的系统调用的应用程序代码的信息。
标签: char kernel linux-device-driver