工作區啟用(Gating)
Optserv 如何控制哪些工作區(HR、帳號共享、學校)可用:啟用條件、路由,以及多層防護。
並非每間公司一開始就會啟用所有工作區。Optserv 透過工作區啟用(gating)確保正確的模組只在符合條件時開放。
工作區可用性
| 工作區 | 路由 | 何時啟用 |
|---|---|---|
| HR | /hr | 永遠啟用——不可停用 |
| 帳號共享(Account Sharing) | /accounts | 公司設定 account_sharing_enabled = true |
| 學校(OptClass) | /school | 使用者 metadata claim school_accessible = true(以公司為單位,而非個人) |
HR 工作區
HR 工作區永遠是開啟的。每間公司從第一天就能使用人員管理、出勤、請假、加班與招募。
帳號共享工作區
帳號共享由 Admin 以「公司」為單位啟用。啟用後:
/accounts路由會對所有員工(Admin、HR、Manager、Employee)可用- 以項目為單位的存取清單決定誰能查看每個共享憑證
- 若停用,工作區會從導覽中隱藏
只有 Admin 能開關帳號共享;設定位於公司設定中。
學校(OptClass)工作區
學校工作區由使用者 metadata claim(school_accessible)控管。這個 claim 會綁在公司,不是綁在單一使用者——當某間公司被啟用學校後,該公司的所有員工都會取得這個 claim。
啟用需要聯絡 Optserv 支援協助,並非自助開啟。
啟用後:
/school路由會對所有 員工(Admin、HR、Manager、Employee)可用- 學生使用獨立的 kiosk 介面——他們 不會 使用員工 Web App
- 系統會透過 metadata 檢查主動阻擋學生進入員工 Web App
多層啟用防護
工作區啟用使用縱深防禦:
- 導覽層 — 未啟用時不顯示工作區入口
- 路由守門 — 伺服器端檢查,載入時會把不符合資格的使用者導走
- RLS — 若公司未啟用工作區,資料庫查詢不會回傳任何資料列
- API / Edge Functions — 寫入操作會拒絕未啟用工作區的公司請求
停用某工作區(例如關掉帳號共享)不會刪除資料——只是讓工作區在再次啟用前不可存取。
關於學生
學生是不同的使用者類別,並不走員工的工作區 gating 模型。請見 OptClass 學生存取 了解學生存取方式。