

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

# Google Drive 連接器 V2.0
<a name="data-source-v2-google-drive"></a>

Google Drive 是一種雲端檔案儲存服務。您可以使用 Amazon Kendra 為存放在共用磁碟機、我的磁碟機和與我共用資料夾的 Google Drive 資料來源中的文件和評論編製索引。您可以為 Google Workspace 文件以及文件[類型中列出的文件](https://docs.aws.amazon.com/kendra/latest/dg/index-document-types.html)編製索引。您也可以使用包含和排除篩選條件，依檔案名稱、檔案類型和檔案路徑來索引內容。

**注意**  
Google Drive 連接器 V1.0 / Google DriveConfiguration API 已於 2023 年結束。我們建議您遷移至或使用 Google Drive 連接器 V2.0 / TemplateConfiguration API。

如需對 Amazon Kendra Google Drive 資料來源連接器進行故障診斷，請參閱 [對資料來源進行故障診斷](troubleshooting-data-sources.md)。

**Topics**
+ [支援的功能](#supported-features-v2-google-drive)
+ [先決條件](#prerequisites-v2-google-drive)
+ [連線指示](#data-source-procedure-v2-google-drive)
+ [備註](#google-drive-notes)

## 支援的功能
<a name="supported-features-v2-google-drive"></a>
+ 欄位對應
+ 使用者存取控制
+ 包含/排除篩選條件
+ 完整和增量內容同步
+ 虛擬私有雲端 (VPC)

## 先決條件
<a name="prerequisites-v2-google-drive"></a>

在您可以使用 Amazon Kendra 為 Google Drive 資料來源編製索引之前，請在 Google Drive 和 AWS 帳戶中進行這些變更。

**在 Google Drive 中，請確認已完成以下項目：**
+ ****您已由超級管理員授予存取權，**或**您具備管理權限。若您已獲超級管理員授權存取權，即無需具備超級管理員角色本身。
+ 您已設定 Google Drive Service 帳戶連線憑證，內容包含管理員帳戶電子郵件、用戶端電子郵件 (服務帳戶電子郵件) 及私有金鑰。請參閱 [Google Cloud 文件：建立與刪除服務帳戶金鑰](https://cloud.google.com/iam/docs/keys-create-delete)。
**注意**  
建議定期更新或輪換憑證與機密。僅授予作業所需的最低存取層級，以確保自身安全。**我們不**建議您在資料來源以及連接器 1.0 和 2.0 版 （如適用） 之間重複使用登入資料和秘密。
+ 建立具備使用者身分委派授權的 Google Cloud Service 帳戶，並**啟用 G Suite Domain-wide Delegation** 以進行 server-to-server 驗證，之後再以該帳戶產生 JSON 私有金鑰。
**注意**  
私有金鑰必須在建立服務帳戶後產生。
+ 您的使用者帳戶中必須已新增 Admin SDK API 與 Google Drive API。
+ **選用：**已設定的 Google Drive OAuth 2.0 連線憑證，其中包含用戶端 ID、用戶端密碼及重新整理字符，作為特定使用者的連線憑證。您需要此項目以爬取個別帳戶資料。請參閱 [Google 文件：使用 OAuth 2.0 存取 API](https://developers.google.com/identity/protocols/oauth2)。
+ 使用超級管理員角色，將下列 OAuth 範圍新增至您的服務帳戶；或請具備超級管理員角色的使用者代為新增。這些 API 範圍是爬取 Google Workspace 網域內所有文件及各使用者的存取控制 (ACL) 資訊所必需的：
  + https://www.googleapis.com/auth/drive.readonly — 用於檢視並下載所有 Google Drive 檔案。
  + https://www.googleapis.com/auth/drive.metadata.readonly — 用於檢視 Google Drive 中檔案的中繼資料。
  + https://www.googleapis.com/auth/admin.directory.group.readonly — 用於檢索群組、群組別名與成員資訊。 Amazon Kendra 身分爬蟲程式需要此項目。
  + https://www.googleapis.com/auth/admin.directory.user.readonly — 用於檢索使用者及使用者別名。這對於列出 Amazon Kendra Identity Crawler 中的使用者和設定 ACLs 是必要的。
  + https://www.googleapis.com/auth/cloud-platform — 用於產生存取字符，以擷取大型 Google Drive 檔案的內容。
  + https://www.googleapis.com/auth/forms.body.readonly — 用於擷取 Google Forms 的資料。

  ** 若要支援 Forms API，請新增下列附加範圍：**
  + https://www.googleapis.com/auth/forms.body.readonly
+ 檢查每個文件在 Google Drive 和您計劃用於相同索引的其他資料來源中都是唯一的。您要用於索引的每個資料來源不得包含跨資料來源的相同文件。文件 IDs是索引的全域 ID，且每個索引必須是唯一的。

**在您的 中 AWS 帳戶，請確定您有：**
+ [建立 Amazon Kendra 索引](https://docs.aws.amazon.com/kendra/latest/dg/create-index.html)，如果使用 API， 會記下索引 ID。
+ 為您的資料來源[建立 IAM 角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)，如果使用 API， 會記下 IAM 角色的 ARN。
**注意**  
如果您變更身分驗證類型和登入資料，則必須更新您的 IAM 角色以存取正確的 AWS Secrets Manager 秘密 ID。
+ 將您的 Google Drive 身分驗證憑證存放在 AWS Secrets Manager 秘密中，如果使用 API， 會記下秘密的 ARN。
**注意**  
建議定期更新或輪換憑證與機密。僅授予作業所需的最低存取層級，以確保自身安全。**我們不**建議您在資料來源以及連接器 1.0 和 2.0 版 （如適用） 之間重複使用登入資料和秘密。

如果您沒有現有的 IAM 角色或秘密，您可以在連線至 Google Drive 資料來源時使用 主控台建立新的 IAM 角色和 Secrets Manager 秘密 Amazon Kendra。如果您使用 API，則必須提供現有 IAM 角色和 Secrets Manager 秘密的 ARN，以及索引 ID。

## 連線指示
<a name="data-source-procedure-v2-google-drive"></a>

若要 Amazon Kendra 連線至 Google Drive 資料來源，您必須提供 Google Drive 資料來源的必要詳細資訊，以便 Amazon Kendra 可以存取您的資料。如果您尚未為 設定 Google Drive， Amazon Kendra 請參閱 [先決條件](#prerequisites-v2-google-drive)。

------
#### [ Console ]

** Amazon Kendra 連線至 Google Drive** 

1. 登入 AWS 管理主控台 並開啟 [Amazon Kendra 主控台](https://console.aws.amazon.com/kendra/)。

1. 從左側導覽窗格中，選擇**索引**，然後從索引清單中選擇您要使用的索引。
**注意**  
您可以選擇在索引設定下設定或編輯**使用者存取控制**設定。 ****

1. 在**入門**頁面上，選擇**新增資料來源**。

1. 在**新增資料來源**頁面上，選擇 **Google Drive 連接器**，然後選擇**新增連接器**。如果使用版本 2 （如適用），請選擇具有「V2.0」標籤的 **Google Drive 連接器**。

1. 在**指定資料來源詳細資訊**頁面上，輸入下列資訊：

   1. 在**名稱和描述**中，針對**資料來源名稱** - 輸入資料來源的名稱。您可以包含連字號，但不能包含空格。

   1. （選用） **描述** — 輸入資料來源的選用描述。

   1. 在**預設語言** - 選擇語言來篩選索引的文件。除非您另有指定，否則語言預設為英文。文件中繼資料中指定的語言會覆寫選取的語言。

   1. 在**標籤**中，針對**新增標籤** - 包含選用標籤，以搜尋和篩選您的資源或追蹤您的 AWS 成本。

   1. 選擇**下一步**。

1. 在**定義存取和安全性**頁面上，輸入下列資訊：

   1. **授權**：如果您有 ACL 並想要將其用於存取控制，請開啟或關閉文件的存取控制清單 (ACL) 資訊。ACL 指定使用者可以和群組存取哪些文件。ACL 資訊用於根據使用者或其群組對文件的存取來篩選搜尋結果。如需詳細資訊，請參閱[使用者內容篩選](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)。

   1. 針對**身分驗證** - 根據您的使用案例，在 **Google 服務帳戶**與 **OAuth 2.0 身分驗證**之間進行選擇。

   1. **AWS Secrets Manager secret** - 選擇現有的秘密，或建立新的 Secrets Manager 秘密來存放您的 Google Drive 身分驗證登入資料。如果您選擇建立新的秘密，則會 AWS 開啟 Secrets Manager 秘密視窗。

      1. 如果您選擇 **Google 服務帳戶**，請在服務帳戶組態 （管理員電子郵件） 中輸入秘密的名稱、管理員使用者的電子郵件 ID 或「服務帳戶使用者」、服務帳戶的電子郵件 ID （用戶端電子郵件），以及您在服務帳戶中建立的私有金鑰。

         儲存並新增您的秘密

      1. 如果您選擇 **OAuth 2.0 身分驗證**，請輸入您在 OAuth 帳戶中建立的秘密、用戶端 ID、用戶端秘密和重新整理字符的名稱。使用者郵件 ID （已設定連線詳細資訊的使用者） 將設定為 ACL。由於 API 限制，連接器不會將其他使用者/群組主體資訊設定為 ACL。

         儲存並新增您的秘密。

   1. **Virtual Private Cloud (VPC)** — 您可以選擇使用 VPC。若是如此，您必須新增**子網路**和 **VPC 安全群組**。

   1. （僅適用於 Google 服務帳戶身分驗證使用者）

      **身分爬蟲程式** - 指定是否開啟 Amazon Kendra的身分爬蟲程式。身分爬蟲程式會使用文件的存取控制清單 (ACL) 資訊，根據使用者或其群組對文件的存取來篩選搜尋結果。如果您有文件的 ACL 並選擇使用您的 ACL，您也可以選擇開啟 Amazon Kendra身分爬蟲程式，以設定搜尋結果[的使用者內容篩選](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)。否則，如果關閉身分識別編目程式，則所有文件都可公開搜尋。如果您想要使用文件的存取控制，而身分識別編目程式為關閉狀態，您可以改用 [PutPrincipalMapping](https://docs.aws.amazon.com/kendra/latest/APIReference/API_PutPrincipalMapping.html) API 來上傳使用者和群組存取資訊，以供使用者內容篩選使用。

   1. **IAM role** - 選擇現有 IAM 角色或建立新的 IAM 角色，以存取您的儲存庫登入資料和索引內容。
**注意**  
IAM 用於索引的 角色無法用於資料來源。如果您不確定現有角色是否用於索引或常見問答集，請選擇**建立新角色**以避免錯誤。

   1. 選擇**下一步**。

1. 在**設定同步設定**頁面上，輸入下列資訊：

   1. **同步內容** - 選取您要編目的選項或內容。您可以選擇編目 My Drive （個人資料夾）、共用磁碟機 （與您共用的資料夾） 或兩者。您也可以包含檔案註解。

   1. **在其他組態中 - 選用** 您也可以輸入下列選用資訊：

      1. **檔案大小上限** - 設定要爬取的檔案大小上限，以 MBs。

      1. **使用者電子郵件** - 新增您要包含或排除的使用者電子郵件。

      1. **共用磁碟機** - 新增您要包含或排除的共用磁碟機名稱。

      1. **Mime 類型** - 新增您要包含或排除的 MIME 類型。

      1. **實體規則運算式模式** - 新增規則表達式模式，以包含或排除所有支援實體的特定附件。最多可新增 100 個模式。

         您可以為**檔案名稱**、**檔案類型**和**檔案路徑**設定包含/排除 regex 模式。
         + **檔案名稱** – 要包含或排除的檔案名稱。例如，若要以名稱 為檔案編製索引`teamroster.txt`，請提供 `teamroster`。
         + **檔案類型** – 要包含或排除的檔案類型。例如，.pdf .txt .docx。
         + **檔案路徑** – 要包含或排除的檔案路徑。例如，若要僅在磁碟機`Products list`的 資料夾內為檔案編製索引，請提供 `/Products list`。

   1. **同步模式** - 選擇您希望在資料來源內容變更時更新索引的方式。當您 Amazon Kendra 第一次使用 同步資料來源時，預設會爬取所有內容並編製索引。如果初始同步失敗，即使您未選擇完全同步做為同步模式選項，仍必須執行資料的完整同步。
      + 完全同步：全新編製所有內容的索引，每次資料來源與索引同步時取代現有的內容。
      + 新的、修改過的同步：每次資料來源與索引同步時，僅索引新的和修改的內容。 Amazon Kendra 可以使用資料來源的機制來追蹤自上次同步以來變更的內容和索引內容。
      + 新的、已修改、已刪除的同步：每次資料來源與索引同步時，僅索引新的、已修改和已刪除的內容。 Amazon Kendra 可以使用資料來源的機制來追蹤自上次同步以來變更的內容和索引內容。
**重要**  
Google Drive API 不支援從永久刪除檔案檢索評論。可擷取來自廢棄檔案的評論。當檔案廢棄時，連接器會從 Amazon Kendra 索引中刪除註解。

   1. 在**同步執行排程**中，針對**頻率** - 選擇同步資料來源內容和更新索引的頻率。

   1. 在**同步執行歷史記錄**中，選擇在同步資料來源 Amazon S3 時將自動產生的報告存放在 中。這有助於追蹤同步資料來源時的問題。

   1. 選擇**下一步**。

1. 在**設定欄位映射**頁面上，輸入下列資訊：

   1. 針對**檔案** - 從您要映射至索引 Amazon Kendra 的產生預設資料來源欄位中選取 。
**注意**  
Google Drive API 不支援建立自訂欄位。自訂欄位映射不適用於 Google Drive 連接器。

   1. 選擇**下一步**。

1. 在**檢閱和建立**頁面上，檢查您輸入的資訊是否正確，然後選取**新增資料來源**。您也可以選擇從此頁面編輯您的資訊。成功新增資料來源後，您的**資料來源**將顯示在資料來源頁面上。

------
#### [ API ]

** Amazon Kendra 連線至 Google Drive**

您必須使用 [TemplateConfiguration](https://docs.aws.amazon.com/kendra/latest/APIReference/API_TemplateConfiguration.html) API [指定資料來源結構描述](https://docs.aws.amazon.com/kendra/latest/dg/ds-schemas.html)的 JSON。您必須提供下列資訊：
+ **資料來源** - 當您使用 [https://docs.aws.amazon.com/kendra/latest/dg/API_TemplateConfiguration.html](https://docs.aws.amazon.com/kendra/latest/dg/API_TemplateConfiguration.html) JSON 結構描述`GOOGLEDRIVEV2`時，指定資料來源類型。當您呼叫 [https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html) API `TEMPLATE`時，也請將資料來源指定為 。
+ **身分驗證類型** - 指定要使用服務帳戶身分驗證或 OAuth 2.0 身分驗證。
+ **同步模式** - 指定 Amazon Kendra 如何在資料來源內容變更時更新索引。當您 Amazon Kendra 第一次使用 同步資料來源時，預設會爬取所有內容並編製索引。如果初始同步失敗，即使您未選擇完全同步做為同步模式選項，仍必須執行資料的完整同步。您可以選擇：
  + `FORCED_FULL_CRAWL` 以新編製所有內容的索引，每次資料來源與索引同步時都會取代現有的內容。
  + `FULL_CRAWL` 每次資料來源與索引同步時， 只會編製新內容、修改內容和已刪除內容的索引。 Amazon Kendra 可以使用資料來源的機制來追蹤自上次同步以來變更的內容變更和索引內容。
  + `CHANGE_LOG` 每次資料來源與您的索引同步時， 只會編製新內容和修改內容的索引。 Amazon Kendra 可以使用資料來源的機制來追蹤自上次同步以來變更的內容變更和索引內容。
**重要**  
Google Drive API 不支援從永久刪除檔案檢索評論。可擷取來自廢棄檔案的註解。當檔案廢棄時，連接器會從 Amazon Kendra 索引中刪除註解。
+ **機密 Amazon Resource Name (ARN)** — 提供 Secrets Manager 機密的 Amazon Resource Name (ARN)，其中包含您在 Google Drive 帳戶中建立的身分驗證憑證。如果您使用 Google 服務帳戶身分驗證，秘密會存放在具有下列金鑰的 JSON 結構中：

  ```
  {
      "clientEmail": "user account email",
      "adminAccountEmail": "service account email",
      "privateKey": "private key"
  }
  ```

  如果您使用 OAuth 2.0 身分驗證，秘密會存放在具有下列金鑰的 JSON 結構中：

  ```
  {
      "clientID": "OAuth client ID",
      "clientSecret": "client secret",
      "refreshToken": "refresh token"
  }
  ```
+ **IAM role**—指定`RoleArn`您何時呼叫 `CreateDataSource` 以提供 IAM 角色存取 Secrets Manager 秘密的許可，以及呼叫 Google Drive 連接器所需的公有 APIs 和 Amazon Kendra。如需詳細資訊，請參閱 [IAM Google Drive 資料來源的角色](https://docs.aws.amazon.com/kendra/latest/dg/iam-roles.html#iam-roles-ds)。

您也可以新增下列選用功能：
+  **Virtual Private Cloud (VPC)** — 指定`VpcConfiguration`何時呼叫 `CreateDataSource`。如需詳細資訊，請參閱[設定 Amazon Kendra 以使用 Amazon VPC](vpc-configuration.md)。
+ **我的磁碟機、共用磁碟機、註解**—您可以指定是否要編目這些類型的內容。
+  **包含和排除篩選條件** - 您可以指定是否包含或排除特定使用者帳戶、共用磁碟機和 MIME 類型。
**注意**  
大多數資料來源使用規則表達式模式，作為包含或排除的篩選規則，稱為篩選條件。若您設定包含篩選條件，則只有符合該條件的內容會被編列索引。任何不符合包含篩選條件的文件都不會編製索引。如果您指定包含和排除篩選條件，則符合排除篩選條件的文件不會編製索引，即使它們符合包含篩選條件。
+ **存取控制清單 (ACL)** — 如果您擁有 ACL 並想要將其用於存取控制，請指定是否要為文件編目 ACL 資訊。ACL 指定使用者可以和群組存取哪些文件。ACL 資訊用於根據使用者或其群組對文件的存取來篩選搜尋結果。如需詳細資訊，請參閱[使用者內容篩選](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)。
+ **身分爬蟲程式** - 指定是否開啟 Amazon Kendra的身分爬蟲程式。身分爬蟲程式會使用文件的存取控制清單 (ACL) 資訊，根據使用者或其群組對文件的存取來篩選搜尋結果。如果您有文件的 ACL 並選擇使用您的 ACL，您也可以選擇開啟 Amazon Kendra身分爬蟲程式，以設定搜尋結果[的使用者內容篩選](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#context-filter-user-incl-datasources)。否則，如果關閉身分識別編目程式，則所有文件都可公開搜尋。如果您想要使用文件的存取控制，而身分識別編目程式為關閉狀態，您可以改用 [PutPrincipalMapping](https://docs.aws.amazon.com/kendra/latest/APIReference/API_PutPrincipalMapping.html) API 來上傳使用者和群組存取資訊，以供使用者內容篩選使用。
+  **欄位映射** - 選擇將您的 Google Drive 資料來源欄位映射至您的 Amazon Kendra 索引欄位。如需詳細資訊，請參閱[映射資料來源欄位](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html)。
**注意**  
需要文件內文欄位或文件內文對等項目， Amazon Kendra 才能搜尋您的文件。您必須將資料來源中的文件內文欄位名稱映射至索引欄位名稱 `_document_body`。所有其他欄位是選用的。

如需其他要設定的重要 JSON 金鑰清單，請參閱 [Google Drive 範本結構描述](https://docs.aws.amazon.com/kendra/latest/dg/ds-schemas.html#ds-google-drive-schema)。

------

## 備註
<a name="google-drive-notes"></a>
+ Google Drive 連接器不支援自訂欄位對應，因為 Google Drive UI 無法建立自訂欄位。
+ Google Drive API 不支援從永久刪除的檔案擷取評論。不過，對於垃圾桶中的檔案，評論仍可檢索。當檔案廢棄時， Amazon Kendra 連接器會從 Amazon Kendra 索引中刪除註解。
+ Google Drive API 不會傳回 .docx 檔案中的評論。
+ 如果特定 Google document（文件、試算表、投影片等） 的許可設定為**一般存取：具有連結或與您特定公司網域共用的任何人**，Amazon Kendra 搜尋使用者將看不到該文件，直到提出查詢的使用者存取該文件為止。 ****