そ: その権限は、誰のためにある。
この言葉の意味
ログインできることと、すべてのデータを操作できることは別です。利用者の役割や対象データに応じて、許可する操作を確かめます。画面のボタンを隠すだけではなく、受け付ける側でも権限を確認し、許可していない操作を止める必要があります。
たとえば、こんな場面で
理解を助けるための仮の場面です。
よくある場面
ログインした人の画面だからと、注文番号を変えても同じ取得処理を許すと、別の利用者の注文が見えるおそれがあります。
こう変えてみる
リクエストごとに、今の利用者がその注文を参照できるかをサーバー側で確認します。別アカウントの識別子を渡すテストも用意し、表示制御だけに頼りません。
自分に問いかける
本人確認と、その対象を扱ってよい確認を分けていますか。
今日の実践ヒント
一つの更新操作について、他人のデータを指定した場合にも拒否されるか確認しましょう。