Menu Close
Settings Close

Language and Page Formatting Options

第 6 章 使用 polkit 控制对智能卡的访问

为了覆盖在智能卡中内置的机制(如 PIN、PIN pads 和 biometrics)无法阻止的可能威胁,RHEL 使用 polkit 框架来控制对智能卡的访问控制。

系统管理员可以将 polkit 配置为适合特定场景,如非特权或非本地用户或服务的智能卡访问。

6.1. 通过 polkit 进行智能卡访问控制

个人计算机/智能卡(PC/SC)协议指定将智能卡及其读卡集成到计算系统中的标准。在 RHEL 中,pcsc-lite 软件包提供了中间件来访问使用 PC/SC API 的智能卡。这个软件包的一部分是 pcscd (PC/SC 智能卡)守护进程,确保系统可以使用 PC/SC 协议访问智能卡。

因为在智能卡中内置的访问控制机制(如 PIN、ININ pads 和 biometrics)并不涵盖所有可能的威胁,所以 RHEL 使用 polkit 框架进行更强大的访问控制。polkit 授权管理器可授予特权操作的访问权限。除了授予对磁盘的访问权限外,您还可以使用 polkit 来指定保护智能卡的策略。例如,您可以定义哪个用户可以使用智能卡来执行哪些操作。

安装 pcsc-lite 软件包并启动 pcscd 守护进程后,系统强制执行在 /usr/share/polkit-1/actions/ 目录中定义的策略。默认系统范围的策略位于 /usr/share/polkit-1/actions/org.debian.pcsc-lite.policy 文件中。polkit 策略文件使用 XML 格式,其语法包括在 polkit(8) man page 中。

polkitd 服务监控 /etc/polkit-1/rules.d//usr/share/polkit-1/rules.d/ 目录,以查看存储在这些目录中规则文件中的任何更改。文件包含 JavaScript 格式的授权规则。系统管理员可以在两个目录中添加自定义规则文件,并且 polkitd 会根据其文件名以字典顺序读取它们。如果两个文件具有相同的名称,则首先读取 /etc/polkit-1/rules.d/ 中的文件。

其他资源

  • polkit(8), polkitd(8), and pcscd(8) man pages.