2020/06/10

在宅勤務だと体が疲れず寝付きが悪いので、ランニングしてみました。既に眠い…

 

やったこと

競技プログラミング

- 第二回全国統一プログラミング王決定戦予選B:解けず。解説見るとあーなるほどね、となるのだけれど…MODが入る場合の累乗計算覚えた

https://qiita.com/drken/items/3b4fdf0a78e7a138cd9a#4-%E7%B4%AF%E4%B9%97-an

 

- ABC086 C:一発AC。灰diffはさすがに解けるか…

 

・安全なWebアプリケーションの作り方

- 5.2 アカウント管理

メールアドレスの確認は実際にメールを送信して確認するしか無い

ユーザIDの重複防止のためデータベース上でユーザIDを保存する列にはデータベースの一意制約をつけることが望ましい

 

- 5.3 認可

認可とは認証された利用者に対して権限を与えること

認可不備により、リソースIDを変更するだけで情報を閲覧・変更できたり

メニューの表示・非表示だけで認可制御をしてるつもりにならない

認可制御を正しく実装するためには、権限情報をセッション変数に保持することで書き換えできなくすることと、処理や表示の直前に権限の確認をすることが必要

認可制御の要件を定義するためには、権限マトリックスを作成する

IDは担当者ごとに1つ作成し、その個人IDに対して業務に必要なロールを割り当てる

正しい認可制御では、情報の操作に先立って、この機能を実行して良いユーザ化、リソースに対する操作権限はあるか、を確認する。