web-dev-qa-db-ja.com

udevuaccessとhid

私は現在systemdベースのLinuxディストリビューションを使用しており、ドキュメントを読んでいるときに、キーボードやマウスなどの非表示のデバイスが70-uaccess.rulesで「uaccess」のタグが付いていないことに気付きました。これをしない理由はありますか?リモートユーザーがこれらのローカルデバイスにアクセスできないようにする必要があることは私には理にかなっています。

私の現在の理解(まばらなドキュメントを読んだことから)は、uaccessタグを持つデバイスは、systemd(またはpam?)に、ローカルにログインしているユーザーにそのデバイスのaclアクセス許可を与えることを知らせます。これは正しいです?タグを設定したら、ACLパーミッションの設定に実際に責任があるかについてのドキュメントは見つかりませんでした。

3
Brandon Ryan

入力(hid)デバイスと表示デバイス(driデバイスノード)の処理は異なります。

デバイスノードではなく、ファイル記述子を開くためのアクセスが許可され、取り消されます

これにより、複数のGUIセッションを切り替えることができます。非アクティブなユーザーがアクティブなセッションに入力されたパスワードを盗むことはありません。

https://dvdhrm.wordpress.com/2013/08/25/sane-session-switching/

デバイスノードACLは、ブロックデバイスにも使用されません。特権のないユーザーは、udisksを介してのみファイルシステムをマウントできます。

どちらの場合も、自分でデバイスノードを開くことを許可しないでください。したがって、ここでuaccessが使用されない理由はこれで説明できると思います。

タグを設定したら、ACLパーミッションの設定に実際に責任があるかについてのドキュメントは見つかりませんでした。

それはsystemd-logindになります。 pam_systemdはPAMスタックにフックするため、ログイン/ログアウト時にdbusメッセージをlogindに送信できます。

5
sourcejedi