hs-sql-agent 可以使用外部 OpenID Connect provider 處理管理端身分,同時讓本機執行階段授權與 MCP 存取政策繼續由伺服器控制。
OIDC 連線
伺服器選項包含:
OidcEnabled
Authority
ClientId
ClientSecret
RequireHttpsMetadata
正式環境應維持 HTTPS metadata validation;只有在明確使用可信任的本機 identity provider,而且確實需要 HTTP 時才應關閉。
預設 OIDC scopes 為 openid、profile、email。
Claim mapping 與使用者佈建
身分設定可以對外部登入傳入的 email、display name、role 與 email verification claims 做 mapping。服務也可以要求已驗證 email、把外部角色映射到本機角色名稱,並在啟用時自動建立使用者。
重要設定包括:
- email / name claim 的選擇;
- role claim 與角色映射;
- 已驗證 email 的強制要求;
- 預設本機角色與自動佈建;
- 登入流程使用的前端 callback path。
角色映射屬於授權設定,不只是顯示用的身分中繼資料。
MFA 政策
TOTP 是可使用的第二驗證因素。伺服器可以設定 TOTP issuer 名稱,以及必須使用 MFA 的角色清單,因此可對高權限管理角色提高驗證強度,同時繼續讓 identity provider 處理主要登入流程。
持久化 data-protection keys
受保護的 MFA 密鑰與登入狀態依賴 ASP.NET Core data-protection keys。部署設定提供 data-protection key 路徑;這個目錄必須跨重新啟動持久保存,否則原本受保護的狀態可能無法再次解密。
MCP 金鑰是另一條安全邊界
管理端 SSO / MFA 保護的是管理平面;MCP 用戶端使用 MCP server key 驗證,並各自受到資料庫、資料表、工具與執行階段政策範圍限制。不要把管理端 SSO 當成 MCP 金鑰治理的替代品。