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


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

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

5.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) man page 中进行了描述。

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

如果您需要在系统安全服务守护进程(SSSD)没有以 root 用户身份运行时启用智能卡支持,您必须安装 sssd-polkit-rules 软件包。软件包提供了 polkit 与 SSSD 的集成。

其他资源

  • 您系统上的 polkit (8), polkitd (8)pcscd (8) 手册页
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.