過去問ドリル

LinuCレベル3 セキュリティスペシャリスト アクセスおよび権限制御の強化 問51

アクセスおよび権限制御の強化/Linux Access Control Lists によるアクセス制御

setfattr -n user.department -v engineering /srv/data/report.txt を実行し、ファイルにユーザー定義の拡張属性を設定した。この操作に関する説明として、正しいものをすべて選べ。

当サイトのオリジナル問題(LinuCレベル3 セキュリティスペシャリストの出題範囲「アクセスおよび権限制御の強化」に対応。実際の試験問題ではありません)

正解:A、B

解説

user名前空間(user.で始まる名前)の拡張属性は、任意のメタデータをファイルに付与するための仕組みで、ACL(system.posix_acl_access等)とは別の機能です。通常のファイルでは、書き込み権限を持つユーザーであればCAP_SYS_ADMIN等の特権なしに設定・削除できます。削除にはsetfattrの-xオプションを使います。ls -lのパーミッション末尾の「+」はPOSIX ACLが設定されたときに表示されるもので、user名前空間の拡張属性だけでは付きません。user名前空間の属性一覧にはgetfattr -dを使います。

選択肢ごとの解説

  • A正しい。user名前空間の拡張属性は、ファイルの読み書きパーミッションに基づいてアクセス制御され、特別なケーパビリティは不要である。
  • B正しい。setfattr -x は指定した名前の拡張属性を削除するオプションである。
  • C誤り。user名前空間の拡張属性は通常ファイルの場合、ファイルへの書き込み権限があれば一般ユーザーでも設定できる。CAP_SYS_ADMINが必要なのはsecurity名前空間やtrusted名前空間の拡張属性である。
  • D誤り。ls -l の末尾の「+」はPOSIX ACLが設定されたときに表示されるもので、user名前空間の拡張属性では表示されない。user拡張属性の一覧はgetfattr -dで確認する。
LinuCレベル3 セキュリティスペシャリストの問題を演習モードで解く