VLCやAudacityなどのアプリケーションにWebカメラやマイクから録音を指示すると、ハードウェアはスリープ状態から目を覚まし、干渉なしに作業を実行します。
これは良いことですが、プライバシー上の理由からいつも気になりました。ハードウェアデバイスへのアプリのアクセスを制限する方法はありますか?
この記事を書いて、SELinuxやAppArmorのようなものを使ってペアリングを制限するかと思いました/dev/something
。これは可能ですか?より良い簡単な方法はありますか?
また、ウェブカメラやマイク以外に注意すべき他のハードウェアもありますか?
答え1
従来のアプローチは、プログラム/アセンブリの擬似ユーザー(ゲームユーザーなど)を作成し、そのユーザーをアクセス権を必要とするデバイスグループ(カメラなど)に割り当ててから、プログラムを実行することです。そのユーザーとしてSUIDを使用してください。 「その他」(所有者またはグループではない)に対する権限を削除すると、そのグループの所有者とメンバー(医師のユーザーを含む)のみにアクセスできます。
また、プログラムグループを使用して、プログラムを実行できるユーザーを制限することもできます。ビデオ会議(会議など)が許可されたユーザーグループを作成し、関連プログラム(カメラ、マイクへの特別なアクセス権を付与されたプログラム)の実行をこのグループに制限します。
+++
別の方法は、SGIDプログラムをデバイスに属する特別なグループとして実行し、「その他」に対する権限を削除することです。もちろん、これはプログラムが1つの制限されたデバイスにのみアクセスする必要がある場合にのみ機能します。