polkitルール:ユーザーが管理者であることを確認しますか?

polkitルール:ユーザーが管理者であることを確認しますか?

polkit は、javascript で書かれたルールファイルを使って設定されます。

カスタム関数を作成して引数として渡しますpolkit.addRule()。 polkit操作が実行されると、結果が返されるまで関数が順次呼び出されます。 (そうでない場合はデフォルト値を使用します。)

ルール関数は、名前actionsubjectオブジェクトという2つのパラメータを使用して呼び出されます。

これを使用して、subject.isInGroup("wheel")ユーザーが「wheel」グループに属しているかどうかをテストできます。

デフォルトでは、polkitはユーザーが「管理者」かどうかという概念を使用します。この概念の意味は、polkit.addAdminRule() を使用して多少奇妙な方法で変更できます。デフォルトはディストリビューションによって異なります。一部のディストリビューションでは、管理者は「wheel」グループに配置されます。他のディストリビューションでは、「sudo」グループは管理者と見なされます。

「wheel」または「sudo」グループをハードコードするのではなく、トピックがディストリビューションの管理者グループにあるかどうかをテストする移植可能な方法でpolkit.addRule()の関数を作成できますか?

ベストアンサー1

これは不可能です。

これは、polkitや他のセキュリティポリシーにとって非常に一般的なタイプのセキュリティポリシーではありません。多くの人がグループやポルケットのパスワードプロンプトを使用します。

私はPackageKitがこのタイプの戦略を使用していることがわかりました。 (管理者グループは、PackageKitをコンパイルするときにディストリビューションによって割り当てられているようです。)

おすすめ記事