第5章 polkit を使用したスマートカードへのアクセスの制御
PIN、PIN パッド、バイオメトリックなどのスマートカードに組み込まれたメカニズムでは防ぐことができない脅威に対処するため、およびより詳細な制御のために、RHEL は polkit
フレームワークを使用してスマートカードへのアクセス制御を制御します。
システム管理者は、非特権ユーザーや非ローカルユーザー、サービスに対するスマートカードアクセスなど、特定のシナリオに合わせて polkit
を設定できます。
5.1. polkit を介したスマートカードアクセス制御
PC/SC (Personal Computer/Smart Card) プロトコルは、スマートカードとそのリーダーをコンピューティングシステムに統合するための標準を指定します。RHEL では、pcsc-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 ページで説明されています。
polkitd
は、/etc/polkit-1/rules.d/
ディレクトリーおよび /usr/share/polkit-1/rules.d/
ディレクトリーで、これらのディレクトリーに保存されているルールファイルの変更を監視します。ファイルには、JavaScript 形式の認可ルールが含まれています。システム管理者は、両方のディレクトリーにカスタムルールファイルを追加し、polkitd
がファイル名に基づいてアルファベット順に読み込むことができます。2 つのファイルが同じ名前である場合は、最初に /etc/polkit-1/rules.d/
内のファイルが読み込まれます。
System Security Services Daemon (SSSD) が root
として実行されていないときにスマートカードのサポートを有効にする必要がある場合は、sssd-polkit-rules
パッケージをインストールする必要があります。このパッケージは、SSSD と polkit
の統合を提供します。
関連情報
-
システム上の
polkit(8)
、polkitd(8)
、pcscd(8)
man ページ