Skip to content

認証のテーブル設計

Kazane Shimizu edited this page Mar 1, 2023 · 1 revision

認証方法

スキーマ

例のごとくdirectusをベースにしています

superfast_sessions

jwtで認証実装するので不要

API IF

初期管理者登録

OSSによって方針が異なる

  • payloadやburdyは管理者登録画面を用意している
  • directusはプロジェクト作成ステップの中で完結してる

余計なテーブルや画面をつくらなくていい後者(directus案)を採用する

ログイン

POST /api/login

例)http://localhost:8080/api/login

リクエストボディ

{
  email: [email protected],
  password: password*1234
}

レスポンスボディ

superfast_user をencodeしたtokenを返却する

{
  token: 1113adf7afavadavndjafdfa;ndlkjad;f
}

ログアウト

認証の仕方によっては必要?

パスワード忘れ

POST /api/forgot-password

例)http://localhost:8080/api/forgot-password

リクエストボディ

{
  email: [email protected]
}

パスワード再設定

POST /api/reset-password

例)http://localhost:8080/api/reset-password

リクエストボディ

{
  password: password*1234,
  token: 1sdasdn12x1nasdasd
}

ユーザー登録

POST /api/users

例)http://localhost:8080/api/users

リクエストボディ

{
  firstName: '風音',
  lastName: '清水',
  email: '[email protected]',
  password: 'password*1234',
  roles: [1, 2]
}

レスポンス

user: {
  id: 1
  firstName: '風音',
  lastName: '清水',
  email: '[email protected]'
}

Verify

POST /verify/:token

例)http://localhost:8080/api/verify/1sdasdn12x1nasdasd