Red Hat Training

A Red Hat training course is available for RHEL 8

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

要涵盖智能卡中内置的机制(如 PIN 、PIN 平板和生物识别技术)无法防止的可能的威胁,以及更精细的控制,RHEL 使用 polkit 框架来控制对智能卡的访问控制。

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

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

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

因为在智能卡内置的访问控制机制(如 PIN、PIN 平板 和生物识别技术)没有涵盖所有可能的威胁,所以 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) 手册页中进行了描述。

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

其它资源

  • polkit(8)polkitd(8)pcscd(8) 手册页。