使用者授權
當使用者使用 SAML 單一登錄 (SSO) 成功透過您的識別提供者 (IdP) 進行驗證之後,下一個重要步驟是授權—授與個人存取令牌(PAT)、SSH 密鑰或 OAuth 應用程式等工具,並能夠存取組織資源。
使用 SAML SSO 和 SCIM 將使用者授權自動化
安全性判斷提示標記語言 (SAML) SSO 可讓企業和組織擁有者控制對 GitHub 資源的存取,例如存放庫、問題和提取要求。 整合 SCIM(跨網域身分識別管理系統)可藉由自動化使用者布建和取消布建來增強訪問控制。
透過 SCIM,新增至 IdP 的新員工會自動獲得 GitHub 的存取權,同時移除離開的使用者、減少手動步驟並改善安全性。
備註
如果沒有 SCIM,僅靠 SAML SSO 無法支援自動取消佈建組織成員。
SCIM 也會在會話結束時撤銷過時的令牌,進而降低安全性風險。 如果沒有 SCIM,必須手動撤銷過時的令牌。
使用 SAML SSO 管理 SSH 金鑰和 PAT
SAML SSO 和 SCIM 會共同運作,以反映 GitHub 中的身分識別變更。 若要支援此凝聚力:
NameID和userName必須符合 SAML IdP 和 SCIM 用戶端。- 在您的 IdP 中對變更進行分組會觸發 GitHub 中的 SCIM 更新。
存取 API 或 Git 的使用者必須使用授權的 PAT 或 SSH 金鑰。 這些方法是可稽核且安全地系結至 SAML SSO。
若要簡化加入流程,請透過以下方式建立使用者:https://github.com/orgs/ORGANIZATION/sso/sign_up。 在您的 IdP 儀錶板中顯示此連結。
當使用者第一次驗證時,GitHub 會將其帳戶和 SCIM 數據連結至您的組織。 系統管理員可以稍後檢查或撤銷工作階段和憑證,以自動化離線程序。
SCIM 與 GitHub 整合
SCIM藉由支援原生整合和自定義組態,簡化 GitHub Enterprise Cloud 中的身分識別管理。
支援的 SCIM 提供者
GitHub 原生支援:
- Okta
- Microsoft Entra ID
- OneLogin
- Ping 身分識別
- Google Workspace
這些整合可確保可靠的組態和相容性。
自定義 SCIM 集成
如果您的 IdP 沒有原生支援,請使用 GitHub 的 SCIM API 來建置自訂整合。
SCIM API 概觀
SCIM 2.0 API 可讓您:
- 建立、更新和刪除使用者
- 管理群組
佈建使用者的要求範例
POST /scim/v2/Users
Content-Type: application/json
{
"userName": "jdoe",
"name": {
"givenName": "John",
"familyName": "Doe"
},
"emails": [
{
"value": "jdoe@example.com",
"primary": true
}
]
}
GitHub 會處理此要求,並將使用者新增至您的組織。
使用者入門
針對支援的提供者
- 登入您的IdP管理主控台。
- 啟用 SCIM 佈建。
- 提供 GitHub 的 SCIM 基底 URL 和持有人令牌。
針對自訂 IdP
- 使用 GitHub 的 SCIM REST API。
- 使用 PAT 進行驗證。
- 測試與範例要求的整合。
SCIM 整合的主要優點
- 佈建:自動建立帳戶。
- 更新: 同步角色和部門。
- 撤銷配置: 當用戶離職或離開時,請立即移除存取權限。
SCIM 與手動使用者管理
| 層面 | SCIM 型管理 | 手動管理 |
|---|---|---|
| 自動化 | 自動化資源配置和解除配置 | 需要手動介入 |
| 一致性 | 跨系統標準化的用戶數據 | 不一致的風險 |
| 安全 | 及時停用存取 | 延遲或遺漏撤銷 |
| 延展性 | 可擴展為大型使用者基底 | 大規模繁瑣 |
| 合規 | 協助滿足政策和稽核要求 | 更難追蹤和報告 |
將IdP連線至 GitHub
您可以使用支持的識別提供者,或自備 SAML 2.0 IdP。
支援 (鋪路路徑) IdP
- Okta
- Microsoft Entra ID
- Google Workspace
使用支援的 IdP 有一些優點:
- 無縫整合
- 由 GitHub 支援
- 較低的設定成本
自備 IdP
自備 IdP 需要 SAML 2.0 支援。 它的優點是允許完全彈性。
整合步驟
| 類型 | 步驟 |
|---|---|
| 鋪路路徑: | 1.流覽至企業安全性設定。 2.選取您的IdP。 3.請遵循安裝指示。 |
| 自訂 IdP: | 1.移至安全性設定。 2.選擇自定義 IdP。 3.輸入 SAML 元數據。 4. 驗證連線。 |
比較IdP整合路徑
| 特徵 / 功能 | 鋪設的道路 | 自備 IdP |
|---|---|---|
| 設定過程 | ✅ 引導式設定 | ⚠️ 手動設定 |
| 靈活性 | ⚠️ 限制為列出的 IdP | ✅ 任何 SAML 2.0 IdP |
| 維護保養 | ✅ GitHub 受控 | ⚠️ 組織受控 |
| 個性化 | ⚠️ 最小 | ✅ 完全可自定義 |
| 支援和更新 | ✅ GitHub 支援 | ⚠️ 自我管理 |
管理身分識別和存取
SAML SSO 設定
- 設定您的 SAML SSO URL。
- 提供您的公開憑證。
- 新增 IdP 元數據。
認證管理
PAT 和 SSH 金鑰必須明確授權並連結至 IdP 身分識別,才能安全地存取組織資源。
稽核 SAML 工作階段
- 在設定中檢視作用中工作階段。
- 視需要撤銷個別會話。
GitHub 成員資格考慮
| 類型 | 考量事項 |
|---|---|
| GitHub 實例成員資格 | - 存取公用存放庫 - 建立個人專案 - 公用設定檔可見度 |
| 組織成員資格 | - 角色型內部存取 - 個人檔案可供組織管理員查看 - 可能會影響帳單 |
| 多個組織成員資格 | - 跨組織的不同角色 - 更廣泛的資源存取 - 複雜權限和計費 - 需要嚴格的治理 |