Appearance
設定項(Settings)
Workspace 設定統一存在 setting 表,以 name 為 key、payload 為 protobuf JSON。
來源:
proto/store/store/setting.proto、proto/v1/v1/setting_service.proto。 完整 payload 欄位請查 Proto Schema。
設定名清單
名稱(SettingName) | 用途 | UI 位置 |
|---|---|---|
WORKSPACE_PROFILE | Workspace 全域行為(external URL、2FA、session、密碼政策…) | Settings → General / Security |
WORKSPACE_APPROVAL | 審批規則(CEL condition + ApprovalTemplate) | Settings → Approval |
APP_IM | IM 整合:Slack / Feishu / Wecom / Lark / DingTalk / Teams / Telegram | Settings → IM Integration |
AI | AI 助手設定 | Settings → AI |
DATA_CLASSIFICATION | 資料分級體系 | Settings → Data Classification |
SEMANTIC_TYPES | 欄位語意型別(PII / phone / id 等) | Settings → Semantic Types |
ENVIRONMENT | Environment 清單(Dev / Staging / Prod 之類) | Settings → Environments |
EMAIL | SMTP 設定(通知 / 密碼重設) | Settings → Email |
MAINTENANCE_WINDOW | 維護窗口(Argus P0-5 G2) | Settings → Maintenance Window |
EMERGENCY_PAUSE | 緊急暫停 kill-switch(Argus P1-4 G4) | Settings → Emergency Pause |
MONITORING | 監控橋接 webhook 設定(Argus P1-4.1) | Settings → Monitoring |
SSO_GROUP_MAPPING | OIDC group → role 對映(Argus P1-2) | Settings → SSO → Group Mapping |
SYSTEM | 系統內部設定(license token) | 不暴露於 UI |
WORKSPACE_PROFILE 完整欄位
| 欄位 | 型別 | 預設 | 說明 |
|---|---|---|---|
external_url | string | 空 | 使用者實際造訪的 URL;SSO callback 必填 |
disallow_signup | bool | false | 關掉自助註冊;改由 admin 邀請 |
require_2fa | bool | false | 全 user 強制 TOTP |
refresh_token_duration | duration | 7d | refresh token 有效期 |
access_token_duration | duration | 1h | access token 有效期 |
inactive_session_timeout | duration | 無限 | 閒置 session 自動登出 |
announcement | object | 無 | 全 workspace 廣播訊息(INFO / WARNING / CRITICAL) |
maximum_role_expiration | duration | 無限 | role 指派的最長有效期 |
domains | string[] | 空 | 限制 email domain |
enforce_identity_domain | bool | false | 強制 user / group 僅來自上述 domains |
database_change_mode | enum | PIPELINE | 變更流程模式(PIPELINE / EDITOR) |
disallow_password_signin | bool | false | 關掉密碼登入(admin 除外) |
enable_audit_log_stdout | bool | false | audit log 額外輸出到 stdout(給 log shipper) |
watermark | bool | false | UI 浮水印(防截圖內鬼) |
directory_sync_token | string | 空 | Directory sync API 的 token |
password_restriction | object | 見下 | 密碼政策 |
sql_result_size | int64 (bytes) | 100MB | SQL Editor / Export 結果大小上限 |
query_timeout | duration | 無 | SQL Editor query timeout |
allow_email_code_signin | bool | false | 開啟「email + 6 位驗證碼」登入 |
disallow_self_approval_default | bool | true(新 workspace) | Argus P0-1 零信任預設:禁止自核 |
password_restriction 子欄位
| 欄位 | 預設 |
|---|---|
min_length | 12(建議;最低 8) |
require_number | true |
require_letter | true |
require_uppercase_letter | true |
require_special_character | true |
require_reset_password_for_first_login | true |
password_rotation | 90d |
APP_IM — 支援的 IM 類型
| 類型 | 認證欄位 |
|---|---|
| Slack | token |
| Feishu | app_id, app_secret |
| Wecom | corp_id, agent_id, secret |
| Lark | app_id, app_secret |
| DingTalk | client_id, client_secret, robot_code |
| Teams | tenant_id, client_id, client_secret |
| Telegram | bot_token, chat_id |
所有 credential 欄位 INPUT_ONLY(只能寫不能讀;UI 顯示為遮罩)。
API 操作
bash
# 讀
curl -s -H "Authorization: Bearer $TOKEN" \
"$ARGUS/v1/settings/WORKSPACE_PROFILE" | jq
# 寫
curl -X PATCH -H "Authorization: Bearer $TOKEN" \
-d '{"value":{"workspaceProfile":{"require2fa":true}}}' \
"$ARGUS/v1/settings/WORKSPACE_PROFILE?updateMask=workspaceProfile.require2fa"需要的權限:bb.settings.set。
相關
- 完整 schema:Proto Schema
- 安全相關:認證模式、密碼政策與 MFA
- 變更流程:審批流程