この概念が出た関連問題

この試験の対策ガイド

情報処理安全確保支援士試験 対策ガイド

合格率・勉強法・参考書の選び方をまとめています

見る →
答えと解説を見る(先に解くのがおすすめ)

正解は ア

解説

SQL文「GRANT ALL PRIVILEGES ON A TO B WITH GRANT OPTION;」をA表の所有者が発行したとき、利用者BへのA表に関する権限付与は「全ての権限(SELECT・UPDATE・INSERT・DELETE等)とそれらの付与権(GRANT OPTION)を付与する」(a:正解)。GRANT文の重要な要素:・ALL PRIVILEGES:対象テーブルへの全操作権限(SELECT・INSERT・UPDATE・DELETE・REFERENCES等)を一括付与、・WITH GRANT OPTION:利用者Bが受け取った権限を第三者にさらに付与できる権限(付与権)も同時に付与する。WITH GRANT OPTIONを付与しない場合は権限自体は使えるが第三者への委譲はできない。ALL PRIVILEGESはSELECTのみではなく全権限を指し、GRANT OPTIONを付けないとBは権限を使えるが他者に付与できない点が重要な区別ポイント。

なぜ他の選択肢は違うのか

選択肢 イ
「SELECT・UPDATE・INSERT・DELETE等の全権限を付与するが付与権は付与しない」はWITH GRANT OPTIONなしのGRANT ALL PRIVILEGES ON A TO B;(GRANT OPTIONなし)に相当する。本問のSQL文にはWITH GRANT OPTIONが含まれているため付与権も与えられており、この説明は不正確。
選択肢 ウ
「SELECT・UPDATE・INSERT・DELETE権限は付与しないが付与権だけを付与する」は意味不明な権限付与で、SQLの文法上、権限なしにGRANT OPTIONだけを付与することは通常できない。ALL PRIVILEGESを指定しているため全権限+付与権が付与される。
選択肢 エ
「SELECT権限とSELECT権限の付与権だけを付与し、他の権限は付与しない」はGRANT SELECT ON A TO B WITH GRANT OPTION;(SELECTのみ)に相当する。本問のSQL文はALL PRIVILEGESであり全権限が対象となるため、SELECTのみという記述は誤り。

解くときのポイント

SQLの権限管理: GRANT(権限付与)、REVOKE(権限剥奪)、WITH GRANT OPTION(付与権の付与)。最小権限の原則から必要最小限の権限のみ付与することが重要。