Skip to content

Auth Endpoints(工牌登入)

Auth.js v5 在 /api/auth/ 下暴露下列 route handler。瑞成 PMS 以工牌編號 + 密碼(Credentials provider)登入,不使用 OAuth。

GET /api/auth/session

回傳目前 session,未登入則回傳 null

Response(已登入):

json
{
  "user": {
    "id": "uuid-v4",
    "badge": "R00001",
    "name": "張庭瑜",
    "role": "admin"
  },
  "expires": "2026-07-14T12:00:00.000Z"
}

Response(未登入):

json
null
GET/api/auth/session
Base URL (your deployed Next.js app)
Authorization Header (optional)
Try in Live App →

POST /api/auth/signin

以工牌編號與密碼登入。

Request body:

json
{
  "badge": "R90001",
  "password": "Admin123!",
  "redirect": false
}

Response(成功):

設定 session cookie 並導向(若 redirect: false 則回傳 JSON)。

POST/api/auth/signin
Base URL (your deployed Next.js app)
Authorization Header (optional)
Request Body (JSON)
Try in Live App →

POST /api/auth/signout

登出目前使用者,清除 session cookie。

三層角色(RBAC)

角色代表權限
admin(管理員)張庭瑜 R00001全部案件、進度覆寫、節點增刪、樣板/分類/帳號管理、稽核日誌
operator(行政)林靜怡 R00012代建檔、編輯案件/業主/帳號、刪除類動作(入日誌);不可填進度 %
staff(一般)陳柏宇 R00007僅見被指派案件、更新節點/自填進度;CRM 唯讀;無系統設定

完整 10 旗標權限矩陣見 lib/rc-permissions.tsRC_PERM_MATRIX)。守衛從 DB re-read live role,降權立即生效。

Released under the MIT License.