3.0 KiB
3.0 KiB
組織與會員管理規劃(給前端/後端協作)
1. 目前狀態(你現在看到空白是正常)
- 已完成:
- Authentik 登入
/me基本個人資料- 權限 grant/revoke 與 snapshot
- 尚未完成:
- 公司組織(Organization)CRUD
- 會員(Member)清單/新增/編輯/停用
- 會員與組織關聯管理
2. 建議產品資訊架構(IA)
我的資料:目前登入者基本資訊、登出我的權限:目前登入者權限快照組織管理:公司清單、建立公司、編輯公司、狀態切換會員管理:會員清單、邀請/建立會員、編輯會員、停用會員、指派組織權限管理:保留現有 grant/revoke(可作為管理員進階頁)
3. 後端 API(v1,已開)
Organization(admin)
GET /admin/organizationsPOST /admin/organizationsGET /admin/organizations/{org_id}PATCH /admin/organizations/{org_id}POST /admin/organizations/{org_id}/activatePOST /admin/organizations/{org_id}/deactivate
Member(admin)
GET /admin/membersPOST /admin/membersGET /admin/members/{member_id}PATCH /admin/members/{member_id}POST /admin/members/{member_id}/activatePOST /admin/members/{member_id}/deactivate
Member x Organization(admin)
GET /admin/members/{member_id}/organizationsPOST /admin/members/{member_id}/organizations/{org_id}DELETE /admin/members/{member_id}/organizations/{org_id}
Internal 查詢 API(給其他系統)
GET /internal/membersGET /internal/members/by-sub/{authentik_sub}GET /internal/organizationsGET /internal/organizations/by-code/{org_code}GET /internal/members/{member_id}/organizations
4. 建議資料表(最小可行)
organizationsid(uuid)org_code(unique)nametax_id(nullable)status(active|inactive)created_at,updated_at
membersid(uuid)authentik_sub(unique)emaildisplay_namestatus(active|inactive)created_at,updated_at
member_organizationsmember_idorganization_id- unique(
member_id,organization_id)
5. 前端頁面需求(給另一個 AI)
/admin/organizations- 表格 + 查詢 + 新增 Dialog + 編輯 Dialog + 啟停用
/admin/members- 表格 + 查詢 + 新增 Dialog + 編輯 Dialog + 啟停用
/admin/members/:id/organizations- 左側會員資訊,右側組織綁定清單 + 加入/移除
6. 權限模型(建議)
org.manage:組織管理member.manage:會員管理permission.manage:權限管理
可映射到現有權限欄位:
scope_type=globalscope_id=member-centermodule=organization|member|permissionaction=view|create|update|deactivate|grant|revoke
7. 驗收標準
- 可以建立/修改/停用組織
- 可以建立/修改/停用會員
- 可以將會員加入/移出組織
- UI 顯示成功/失敗訊息,並可重新整理資料
- 所有管理 API 都有管理員金鑰驗證(
X-Client-Key+X-API-Key)