

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# GitHub 為 AppFabric 設定
<a name="github"></a>

GitHub 是使用 Git 進行軟體開發和版本控制的平台和雲端服務，可讓開發人員儲存和管理其程式碼。它為每個專案提供 Git plus 存取控制、錯誤追蹤、軟體功能請求、任務管理、持續整合和 wiki 的分散式版本控制。

為了安全起見，您可以使用 AWS AppFabric 從 接收稽核日誌和使用者資料GitHub、將資料標準化為開放網路安全結構描述架構 (OCSF) 格式，並將資料輸出至 Amazon Simple Storage Service (Amazon S3) 儲存貯體或 Amazon Data Firehose 串流。

**Topics**
+ [的 AppFabric 支援 GitHub](#github-appfabric-support)
+ [將 AppFabric 連接到GitHub您的帳戶](#github-appfabric-connecting)

## 的 AppFabric 支援 GitHub
<a name="github-appfabric-support"></a>

AppFabric 支援從 接收使用者資訊和稽核日誌GitHub。

### 先決條件
<a name="github-prerequisites"></a>

若要使用 AppFabric 將稽核日誌從 傳輸GitHub到支援的目的地，您必須符合下列要求：
+ 若要存取稽核日誌，您需要擁有 企業帳戶。
+ 若要存取企業稽核日誌，您需要擁有企業帳戶的管理員角色。
+ 若要從組織取得稽核日誌，您必須是組織擁有者。

### 速率限制考量
<a name="github-rate-limits"></a>

GitHub 對 GitHub API 強加速率限制。如需 GitHub API 速率限制的詳細資訊，請參閱 *GitHub *網站上的 [API 請求限制和配置](https://docs.github.com/en/apps/creating-github-apps/registering-a-github-app/rate-limits-for-github-apps)。如果 AppFabric 和現有 GitHub API 應用程式的組合超過GitHub’s限制，AppFabric 中出現的稽核日誌可能會延遲。

### 資料延遲考量
<a name="github-data-delay"></a>

您可能會看到稽核事件最多延遲 30 分鐘交付至目的地。這是因為應用程式提供的稽核事件延遲，以及為了減少資料遺失而採取的預防措施。不過，這可以在帳戶層級自訂。如需協助，請聯絡 [支援](https://aws.amazon.com/contact-us/)。

## 將 AppFabric 連接到GitHub您的帳戶
<a name="github-appfabric-connecting"></a>

在 AppFabric 服務中建立應用程式套件之後，您必須使用 授權 AppFabricGitHub。若要尋找GitHub使用 AppFabric 授權所需的資訊，請使用下列步驟。

### 建立 OAuth 應用程式
<a name="github-create-oauth"></a>

AppFabric GitHub使用 OAuth 與 整合。使用下列步驟在 中建立 OAuth 應用程式GitHub。如需詳細資訊，請參閱 *GitHub *網站上的[建立 GitHubs 應用程式](https://docs.github.com/en/apps/creating-github-apps)。

1. 選擇位於頁面右上角的設定檔相片，然後選擇**設定**。

1. 在左側導覽窗格中選擇**開發人員設定**。

1. 在左側導覽窗格中選擇 **OAuth 應用程式**。

1. 選擇**新的 OAuth 應用程式**。
**注意**  
如果您先前尚未建立 OAuth **應用程式，此按鈕會標記為註冊新**應用程式。

1. 在應用程式名稱文字方塊中輸入**應用程式的名稱**。

1. 在**首頁 URL 文字方塊中輸入完整的應用程式執行個體 URL**。

1. （選用） 在應用程式描述文字方塊中輸入**應用程式的描述**。使用者將看到此描述。

1. 在**授權回呼 URL 文字方塊中輸入具有下列格式的 URL**。

   ```
   https://<region>.console.aws.amazon.com/appfabric/oauth2
   ```

   在此 URL 中，*<region>* 是您設定 AppFabric 應用程式套件 AWS 區域 之 的程式碼。例如，美國東部 (維吉尼亞北部) 區域的代碼為 `us-east-1`。對於該區域，重新導向 URL 為 `https://us-east-1.console.aws.amazon.com/appfabric/oauth2`。

1. 如果您的 OAuth 應用程式將使用裝置流程來識別和授權使用者，請選擇**啟用**裝置流程。如需裝置流程的詳細資訊，請參閱 *GitHub 網站上的*[授權 OAuth 應用程式](https://docs.github.com/en/enterprise-cloud@latest/apps/oauth-apps/building-oauth-apps/authorizing-oauth-apps#device-flow)。

1. 選擇**註冊應用程式**。

### 應用程式授權
<a name="github-app-authorizations"></a>

#### 租戶 ID
<a name="github-tenant-id"></a>

AppFabric 將請求您的租戶 ID。租用戶 ID 應以下列其中一種格式提供：

**企業稽核日誌：**

如果您想要了解企業帳戶擁有的所有組織的彙總動作，請使用企業的稽核日誌。

若要使用企業稽核日誌，租戶 ID 是您帳戶的企業 ID。您可以在瀏覽器的地址列中找到您的企業 ID。例如， `exampleenterprise`是下列 URL 中的企業 ID`https://github.com/settings/enterprises/examplenterprise`。

當您指定企業稽核日誌的租戶 ID 時，必須以 為字首`enterprise:`。因此，請將先前的範例指定為 `enterprise:examplenterprise`。

**組織稽核日誌：**

如果您想要了解組織成員執行的動作，請使用組織的稽核日誌做為組織管理員。它包含詳細資訊，例如執行動作的人員、動作的內容，以及執行動作的時間。

若要使用組織稽核日誌，租戶 ID 是您的組織 ID。您可以在瀏覽器的地址列中找到您的組織 ID。例如， `exampleorganization`是下列 URL 中的組織 ID`https://github.com/settings/organizations/exampleorganization`。

當您為組織稽核日誌指定租戶 ID 時，必須以 為字首`organization:`。因此，請將先前的範例指定為 `organization:exampleorganization`。

#### 租用戶名稱
<a name="github-tenant-name"></a>

輸入可識別此唯一GitHub企業或組織的名稱。AppFabric 使用租戶名稱來標記應用程式授權，以及從應用程式授權建立的任何擷取。

#### 用戶端 ID
<a name="github-client-id"></a>

AppFabric 將請求用戶端 ID。使用下列步驟在 中尋找您的用戶端 IDGitHub，

1. 選擇位於頁面右上角的設定檔相片，然後選擇**設定**。

1. 在左側導覽窗格中選擇**開發人員設定**。

1. 在左側導覽窗格中選擇 **OAuth 應用程式**。

1. 選擇特定的 OAuth 應用程式，然後尋找**用戶端 ID** 值。

#### Client secret (用戶端密碼)
<a name="github-client-secret"></a>

AppFabric 將請求用戶端秘密。使用下列步驟在 中尋找您的用戶端秘密GitHub。

1. 選擇位於頁面右上角的設定檔相片，然後選擇**設定**。

1. 在左側導覽窗格中選擇**開發人員設定**。

1. 在左側導覽窗格中選擇 **OAuth 應用程式**。

1. 選擇特定的 OAuth 應用程式，然後尋找**用戶端秘密**值。如果您找不到現有的用戶端秘密，則可能需要產生新的秘密。

#### 核准授權
<a name="github-approve-authorization"></a>

在 AppFabric 中建立應用程式授權後，您會收到來自 的快顯視窗GitHub，以核准授權。若要核准 AppFabric 授權，請選擇**允許**。

如果啟用 OAuth 應用程式[存取限制，請確定您的組織已授予](https://docs.github.com/en/organizations/managing-oauth-access-to-your-organizations-data/approving-oauth-apps-for-your-organization) [OAuth 應用程式的存取權](https://docs.github.com/en/organizations/managing-oauth-access-to-your-organizations-data/about-oauth-app-access-restrictions)。