跳至內容

以 SCIM 佈建用戶

當你想要完整的生命週期管理——離職必須自動撤銷存取權,而不只是阻止日後 登入——就請使用本指南。SCIM 正是 IdP(Okta、Entra ID 等)為此採用的推送 協定。

  • SSO 已經可以正常運作(SSO 教學 或 OIDC 指南),
  • 一部 IdP 能透過 HTTPS 連到的伺服器——SCIM 呼叫來自 IdP, 而不是用戶的瀏覽器。請使用內建通道 (設定 → 伺服器 → 連線與狀態 → 分享此伺服器 → Cloudflared/ngrok/Tailscale)或公開 URL。只能透過 WebSocket 中繼連到的伺服器無法接收 SCIM 推送;在該情況下 JIT 佈建仍然 可用,但本指南不適用。
  1. 開啟 設定 → 伺服器 → 單一登入 → 用戶佈建(SCIM) 卡片。 卡片會顯示端點,例如 https://<your-server>/scim/v2/Users。
  2. 按一下 產生 token(若已存在 token,則按 重新產生 token)—— bearer token 只會在對話框中出現一次,並會複製到剪貼板。請將它存入 你的密碼管理員;伺服器只保留一份可在常數時間驗證的副本。
  3. 在你的 IdP 佈建設定中,用以下內容啟用 SCIM:
    • 基礎 URL:上述端點
    • 認證:Authorization: Bearer <token>
    • 用戶 ID:userName(電郵)或 externalId——兩者都能匹配
  4. 先用一個用戶測試:從 IdP 推送該用戶,確認他出現在清單中(SCIM 建立會把供應商的 externalId 固定到該帳戶上,與首次 SSO 登入所做的 固定相同)。

當 IdP 傳送 active: false(或 DELETE)時,若該帳戶是工作區的 擁有者,SCIM 會先拒絕(請先轉移擁有權)。否則:

  1. 先撤銷所有裝置憑證——現行工作階段會在數秒內中斷,
  2. 移除該用戶在所有工作區的成員身分,
  3. 把該帳戶標記為已停用(它再也無法登入,無論 IdP 日後說甚麼,直到被明確 重新啟用為止)。

用戶資料列本身會保留下來——工單、訊息與提交上的歸屬是永久的。重新啟用 (SCIM active: true)會恢復登入,但不會恢復成員身分:這些需要新的 邀請,或登入時自動加入成員的政策。

  • 每次呼叫都回應 401——token 已變更;請重新產生並更新 IdP。
  • 端點無法連到——通道已中斷,或伺服器只能經中繼連線。SCIM 需要直接的 HTTPS;JIT 則不受影響,繼續運作。
  • 推送群組時出錯(501)——這是刻意如此:群組→角色對應是在登入時依 SAML/OIDC 群組屬性進行,而不是依推送的群組。