使用者身分識別與存取管理
驗證是企業軟體開發生態系統的閘道。 每個使用者與 GitHub 的互動都是從身分識別驗證開始。 雖然個別帳戶可以依賴使用者名稱和密碼,但強式企業安全性會授權 雙因素驗證 (2FA) 或更進階的方法,例如 複雜密鑰 和 生物特徵辨識登入。 平衡可用性與安全性是關鍵,特別是在快速節奏的開發環境中。
GitHub Enterprise 中的新式驗證
為了確保安全且簡化的驗證體驗,GitHub 支援多個與身分識別管理系統整合的新式方法:
Passkeys 和 WebAuthn
- Passkeys 是一種無密碼的登入方法,與實體裝置綁定且能有效抵禦網路釣魚攻擊。
- WebAuthn 支援生物特徵辨識因素和硬體令牌,例如 YubiKey。
- 這些方法可大幅減少認證型攻擊,並改善登入UX。
GitHub Mobile for 2FA
使用者可以向 GitHub Mobile 進行驗證,其支援推播通知,以快速、安全核准—增強 2FA,而不會中斷工作流程。
OAuth 和 GitHub Apps
- OAuth Apps 使用 GitHub 的 OAuth 2.0 流程來驗證使用者,並將範圍存取權授與外部應用程式。
- GitHub Apps 會作為個別安裝進行身份驗證,並配有細緻的權限,非常適合 CI/CD 和自動化流程。
企業管理使用者(EMU)
在 GitHub Enterprise Cloud 中,EMU 可確保驗證會嚴格透過您的 識別提供者 (IdP) 進行。 此模型:
- 僅限制對企業管理帳戶的存取。
- 強制集中控制身分識別、認證和會話原則。
使用 SAML SSO 的組織管理
企業級驗證的基礎功能之一是 SAML Single Sign-On (SSO)。 SAML 會連結您的 IdP 與 GitHub,讓用戶能夠使用一組認證跨服務登入。 GitHub 會使用IdP來驗證使用者身分識別,再授與組織或企業資源的存取權。
當使用者登入 GitHub 時,他們可以看到他們所屬的企業,但存取存放庫數據需要透過 IdP 重新驗證 SAML。
身為 企業系統管理員,您的責任包括:
- 根據角色和需要知道來授權存取權。
- 監視和稽核用戶活動。
- 界定許可權範圍,並將攻擊的表面區域降到最低。
若要為組織設定 SAML SSO,請將 IdP 與 GitHub 整合。 支援的提供者包括:
- Active Directory 同盟服務 (AD FS)
- Microsoft Entra ID
- Okta
- OneLogin
- PingOne
- Shibboleth
附註
GitHub 為實作 SAML 2.0 標準的識別提供者提供有限的支援。
企業存取和授權控制
GitHub 中的存取權是由健全且多層式的授權模型所控管:
Fine-Grained 個人存取權杖 (PAT)
不同於傳統的 PAT,細微的 PAT:
- 限制對特定存放庫和範圍的存取。
- 支持自動到期,以減少風險暴露。
- 提供增強的可追蹤性和合規性控制。
自訂存放庫角色
系統管理員可以定義超越預設許可權集合的 自定義角色 。 這支援:
- 針對唯一工作流程量身打造的委派存取權。
- 敏感存放庫的最低權限實施。
安全策略強制執行
您可以強制執行全域安全性控制件,例如:
- 所有使用者都必須使用2FA。
- IP 允許清單 限制對已核准網路的存取。
- 除非明確核准,否則封鎖未驗證的 OAuth 應用程式。
組織與 Enterprise-Level 控制措施
- 組織層級 控件包括預設角色、小組型存取,以及外部共同作業者的管理。
-
企業級 治理包括:
- 集中式 SAML 實施。
- 以IdP為基礎的登入限制。
- 透過 GitHub Enterprise Cloud 強制執行全域原則。
存放庫可見性和內部存取
當組織成員建立存放庫時,他們可以在 公用、 私人或 內部 可見性選項中選擇:
- 公用:可供因特網上的任何人使用。
- 私人:受限於選取的使用者。
- 內部:對企業內的所有成員可見,但會隱藏於外部使用者。
此數據粒度可確保原始程式碼、檔和其他資產只會與適當的專案關係人共用。