2021-05-11 xID打ち合わせ
アプリケーション構成
Section titled “アプリケーション構成”- アプリサーバにシークレットと利用者IDの対を持つ
- アプリダウンロードしてこないケースもあるのでQRコード方式に統一しておいた方が良さげ
- アクティベートのタイミングでアカウントIDを作成するのではないが、再度、要検討
窓口での端末操作フロー
Section titled “窓口での端末操作フロー”QRコード発行
Section titled “QRコード発行”- QRコードには宛名番号を埋め込み、さらに生年月日なども埋め込んでJWTにして署名できるようにしておく
- PHR連携しない場合でもレベル2の多要素認証は必要
- レベル2には目をつぶるか、QRコード発行するか、xID使うか
セキュリティ考慮事項
Section titled “セキュリティ考慮事項”- QRコードを端末内に保持してそれを多要素として使うことも可能だが、端末内に保持する際にはプロテクションをかける必要があり、鍵の管理など必要となり、であればxID使ってもらうのが良い
認証方式の検討
Section titled “認証方式の検討”メール認証の課題
Section titled “メール認証の課題”- メールにマジックリンク張る方法は、所有にはならないのでダメ
- メール内のリンクで端末内のアプリが起動するようにしておくことで、メールを受け取った同一端末となり所有に近づくが100%ではない
- FIDO WEB AUTH
アカウント登録時の選択肢
Section titled “アカウント登録時の選択肢”認証方式の比較
Section titled “認証方式の比較”- SMS認証:2,3個のAPI取り回しで実装できるが従量課金がそれなりにかかる
- メール認証:迷惑メールに振り分けられるなど100%届く保証がない
- マジックリンク方式:メール届かない問題が解決しない限り難しい
アップルストアの規約対応
Section titled “アップルストアの規約対応”サードパーティログイン実装時の注意
Section titled “サードパーティログイン実装時の注意”- サードパーティログインをつけるときはアップルIDをつけなくてはいけない。違反するとリジェクトの可能性
- ログイン後にxIDボタンを出すなど対策が必要
QRコード運用
Section titled “QRコード運用”読み取り処理の設計
Section titled “読み取り処理の設計”- アプリのダウンロード、認証の二つの用途で使用する
- カメラアプリで読み取ったら単純なリンクなので、アプリで読み取ったらURLパラメータを見てシークレット読むとか
セキュリティ対策
Section titled “セキュリティ対策”QRコードのシークレットとアプリサーバとの突合をするときには非対称鍵を使う
- リプレイ攻撃対策(QRコードさらしだと)
- チャレンジレスポンス、鍵漏洩対策
第三者への展開フロー
Section titled “第三者への展開フロー”権限付与の流れ
Section titled “権限付与の流れ”- 第三者が窓口へ来る
- アクティベートユーザがQRコードを生成できる
- xID使えば、渡したい人の生年月日を渡して・・
利用停止フロー
Section titled “利用停止フロー”- 後から消したい場合のフローも考慮
- QRコードを無効化する。リボーク。利用者コードをDisable