跳至主要内容

設定 GitHub App

在使用 GitHub 的環境中,您可以在 Rancher 中設定新的 GitHub App 身份驗證提供者,這允許使用者使用專用的 GitHub App 對 GitHub 組織帳戶進行身份驗證。這個新的提供者與現有的標準 GitHub 身份驗證提供者並行運作,提供更高的安全性和更好的基於 GitHub 組織團隊的權限管理。

前置需求​

注意

GitHub App 身份驗證提供者僅適用於 GitHub 組織帳戶。它不適用於個人 GitHub 使用者帳戶。

在 Rancher 中設定提供者之前,您必須先為您的組織建立 GitHub App,為您的 GitHub App 生成客戶端密鑰,並為您的 GitHub App 生成私鑰。請參閱註冊 GitHub App 以取得詳細資訊。

建立 GitHub App​

  1. 開啟您的 GitHub 組織設定。

  2. 在組織的右側,選擇 Settings。

  3. 在左側邊欄中,點擊 Developer settings > GitHub Apps。

  4. 點擊 New Github App。

  5. 使用以下值填寫 GitHub App 設定表單:

    • GitHub App name: 任何您喜歡的名稱,例如 My Rancher。
    • Application description: 選擇性,可以留空。
    • Homepage URL: https://localhost:8443。
    • Callback URL: https://localhost:8443/verify-auth。
  6. 選擇 Create Github App。

生成客戶端密鑰​

在您的應用程式設定頁面上生成客戶端密鑰。

  1. 前往您的 GitHub App。
  2. 在 Client Secrets 旁邊,選擇 Generate a new client secret。

生成私鑰​

在您的應用程式設定頁面上生成私鑰。

  1. 前往您的 GitHub App。
  2. 在 Private Keys 旁邊,點擊 Generate a private key。

GitHub App 授權提供者設定​

要在 Rancher 中設定 GitHub App 授權提供者,請按照以下步驟操作:

  1. 在 Rancher UI 中導覽至 Users & Authentication 部分。

  2. 選擇 Auth Providers。

  3. 選擇 GitHub App 磁貼。

  4. 收集並將您的 GitHub App 的詳細資訊輸入設定表單欄位。

    欄位名稱描述
    Client ID (必需)您的 GitHub App 的 client ID。
    Client Secret (必需)您的 GitHub App 的 client secret。
    GitHub App ID (必需)與您的 GitHub App 相關聯的數字 ID。
    Installation ID (選擇性)如果您想將身份驗證限制為 App 的單一安裝,請提供其特定的數字 Installation ID。
    Private Key (必需)GitHub 為您的 App 生成的私鑰檔案(PEM 格式)的內容。
備註

GitHub App 可以跨多個組織安裝,每個安裝都有一個唯一的 Installation ID。如果您想將身份驗證限制為單一 App 安裝和 GitHub 組織,請在設定期間提供 Installation ID。如果您不提供 Installation ID,則使用者的權限將在所有安裝中聚合。

  1. 選擇 Enable。Rancher 會嘗試驗證憑證,成功後會啟用 GitHub App 提供者。

啟用後,透過 GitHub App 提供者登入的使用者會自動識別,您可以利用 GitHub 組織的團隊和使用者來設定基於角色的存取控制 (RBAC) 並為專案和叢集分配權限。

備註

確保您打算用於授權的使用者和團隊存在於由 App 管理的 GitHub 組織中。

  • Users: 作為安裝 App 的 GitHub 組織成員的個人 GitHub 使用者可以登入。
  • Groups: GitHub 組織團隊對應到 Rancher 群組,允許您在 Rancher 專案和叢集中為整個團隊分配權限。