第4章 polkit を使用したスマートカードへのアクセスの制御
PIN、PIN パッド、生体認証など、スマートカードに組み込まれたメカニズムでは防止できない可能性のある脅威に対処し、よりきめ細かい制御を行うために、Red Hat Enterprise Linux では、スマートカードへのアクセス制御を管理する polkit
フレームワークを使用します。
システム管理者は、非特権ユーザーや非ローカルユーザー、サービスに対するスマートカードアクセスなど、特定のシナリオに合わせて polkit
を設定できます。
4.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 形式を使用し、その構文は man ページの polkit(8)
で説明されています。
polkitd
は、/etc/polkit-1/rules.d/
ディレクトリーおよび /usr/share/polkit-1/rules.d/
ディレクトリーで、これらのディレクトリーに保存されているルールファイルの変更を監視します。ファイルには、JavaScript 形式の認可ルールが含まれています。システム管理者は、両方のディレクトリーにカスタムルールファイルを追加し、polkitd
がファイル名に基づいてアルファベット順に読み込むことができます。2 つのファイルが同じ名前である場合は、最初に /etc/polkit-1/rules.d/
内のファイルが読み込まれます。