requestに認証をかける
脆弱性がある方法
https://gist.github.com/mala/39650fd9cb41bf58d305a8b311b31ff1#2他人のポートフォリオ職歴を書き換え可能
reqestに、userIdを持たせて送る
serverでは、そのuserIdを使って処理する
問題
CLIからAPIを打てば、他者のuserIdを任意に設定可能
なので、任意のuserの情報を書き換えられる
どうするか
requestにはuserIdを持たせない
requestには、cookieやtoken管理におけるID Tokenなどを持たせる
server側の処理でuserIdが必要な場合は、このTokenから取り出す
CLIからAPIを打つときに、ID Tokenを生成できないので、安全
GETの場合も同様
ログイン済みのユーザーしか見れないはずのデータを取得できてしまう
Same-Origin Policyって本質的な問題の解決になってるんだっけ
requestに認証をかけることこそが重要だったりしないのか
Amazon Cognitoなどを使っている場合は、verifyするようの関数が提供されているはず
それをserver側の処理に書けばいい