本文へ移動
✓ 合格ドリル基礎から練習

基本情報技術者 / 条件・事例の練習

基本情報技術者試験基礎・応用

条件を読む・根拠を説明する

画面とAPIで異なる権限判定

条件を整理し、答えを選んでから解き方を確認しましょう。

社内申請システムを次の構成とする。 ・申請RにはownerIdとstatusがある。 ・一覧画面は本人の申請だけを表示する。 ・GET /requests/id はログインの有無だけ確認し全文を返す。 ・POST /requests/id/approve は承認者ロールを確認する。 ・業務規則は「本人は自分の申請を閲覧、承認者は担当部署の申請を閲覧・承認可。ただし自己承認は禁止」。 一般利用者がURLのidを変えて他人の申請を見られた。承認者は自分の申請も承認できた。両方を是正する方針はどれか。

答え・解き方を読む

各APIで対象と利用者の関係を確認し承認時は部署と自己承認も判定

考える順序

  1. 1画面で絞ってもAPIへ別IDの要求はできる
  2. 2閲覧は所有者または担当部署の承認者かをサーバで判定
  3. 3承認はロール・担当部署・本人でないことを確認する

選択肢ごとの理由

  • 比較 · 全APIにログイン確認を追加し承認者なら部署に関係なく許可

    ログイン確認だけでは部署や自己承認の規則を表現できません。

  • 比較 · 申請IDを長い乱数へ変更し認可処理は維持

    推測しにくいIDは補助であり認可の代替になりません。

  • 正解 · 各APIで対象と利用者の関係を確認し承認時は部署と自己承認も判定

    画面で絞ってもAPIへ別IDの要求はできる。閲覧は所有者または担当部署の承認者かをサーバで判定。承認はロール・担当部署・本人でないことを確認する。

  • 比較 · 一覧だけで他人のIDを隠し承認者ロールの判定は維持

    IDを隠すだけではAPIの対象別権限が欠けたままです。

学習アプリで条件・事例を5問 →

学習の参考資料

用語・仕組みを学ぶための参考資料です。設問の条件と、このページの解き方を併せて確認してください。

教材の作成・確認方法

関連する要点をまとめて読む

技術の入口の要点と練習一覧 →