マナビング基本情報技術者

データベースのアクセス権限をどう絞るか

基本情報技術者試験 平成30年度春期 午前 問43 / セキュリティ › セキュリティ実装技術

過去問にチャレンジ

平成30年度春期 午前 問43

利用者情報を格納しているデータベースから利用者情報を検索して表示する機能だけをもつアプリケーションがある。このアプリケーションがデータベースにアクセスするときに用いるアカウントに与えるデータベースへのアクセス権限として,情報セキュリティ管理上,適切なものはどれか。ここで,権限の名称と権限の範囲は次のとおりとする。 〔権限の名称と権限の範囲〕 参照権限: レコードの参照が可能 更新権限: レコードの登録,変更,削除が可能 管理者権限:テーブルの参照,登録,変更,削除が可能

  1. ア

    管理者権限

  2. イ

    更新権限

  3. ウ

    更新権限と参照権限

  4. エ

    参照権限

会話形式の解説

講師講師
まず、このアプリケーションがデータベースで実際に行う操作を確かめましょう。何が必要ですか。
受験者受験者
利用者情報を検索して表示するので、レコードを読む操作が必要です。テーブルを扱うなら管理者権限も必要でしょうか。
講師講師
問題文では、管理者権限にはテーブルの登録・変更・削除も含まれます。検索・表示だけなら、それらの操作は必要ありません。
受験者受験者
では、管理者権限は広すぎますね。更新権限だけなら範囲を絞れますか。
講師講師
更新権限でできるのは、レコードの登録・変更・削除です。この問題の定義では参照ができず、検索・表示に必要な操作を満たしません。
受験者受験者
更新権限と参照権限を組み合わせれば、読むことはできますね。
講師講師
はい。ただし、その組合せでは不要な登録・変更・削除も可能になります。参照権限だけなら、必要なレコードの参照ができ、更新操作は許しません。
受験者受験者
必要な操作ができるうえに、余分な操作を許さないのは参照権限だけですね。
講師講師
そのとおりです。これが最小権限の原則に沿った選び方です。権限の名前だけで判断せず、問題文に示された操作範囲を一つずつ確認しましょう。

まとめ

検索・表示だけを行うアプリケーションに必要なのは、利用者情報のレコードを参照する操作です。参照権限だけを与えれば、その操作ができます。更新権限だけでは参照できず、管理者権限や参照権限との組合せでは不要な操作まで許します。必要な操作に権限を絞ることが、最小権限の原則に沿った判断です。

解答・解説

正解はエです

この問題のテーマ

検索・表示だけを行うアプリケーションに、どのデータベース権限を与えるべきかを問う問題です。

解き方の考え方

まず、アプリケーションが行う操作を確認します。必要なのは利用者情報のレコードを読むことだけです。最小権限の原則に従い、その操作を可能にする権限の中から、不要な操作を許さないものを選びます。

選択肢ごとの解説

  1. ×ア  管理者権限
    管理者権限では、テーブルの登録・変更・削除まで可能になります。検索・表示には必要のない操作を許すため、与える権限が広すぎます。
  2. ×イ  更新権限
    更新権限でできるのは、問題文の定義ではレコードの登録・変更・削除です。必要な参照を行えず、不要な更新操作を許すので適切ではありません。
  3. ×ウ  更新権限と参照権限
    参照権限があるので、検索・表示はできます。しかし、更新権限を加えるとレコードの登録・変更・削除も可能になり、必要な範囲を超えます。
  4. ○エ  参照権限
    参照権限があれば、利用者情報のレコードを読んで表示できます。更新操作を許さずに必要な機能を実現できるため、この権限だけを与えるのが適切です。

POINT

  • 権限を選ぶ前に、アプリケーションが実際に行う操作を洗い出します。
  • 権限の名称だけで判断せず、問題文に示された操作範囲を確認します。
  • 必要な操作ができるだけでなく、不要な操作を許さないことも確かめます。

※出典:平成30年度春期 基本情報技術者試験 午前 問43