

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

# Zendesk
<a name="data-source-zendesk"></a>

Zendesk 是一種客戶關係管理系統，可協助企業自動化和增強客戶支援互動。您可以使用 Amazon Kendra為 Zendesk 支援票證、票證評論、票證附件、說明中心文章、文章評論、文章評論附件、指南社群主題、社群文章和社群文章評論編製索引。

如果您想要為僅限特定組織內的票證建立索引，您可以依組織名稱進行篩選。您也可以選擇為要從 Zendesk 開始爬取資料的時間設定爬取日期。

您可以使用 [Amazon Kendra主控台](https://console.aws.amazon.com/kendra/)和 [TemplateConfiguration](https://docs.aws.amazon.com/kendra/latest/APIReference/API_TemplateConfiguration.html) API Amazon Kendra連線到 Zendesk 資料來源。

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

**Topics**
+ [支援的功能](#supported-features-zendesk)
+ [先決條件](#prerequisites-zendesk)
+ [連線指示](#data-source-procedure-zendesk)
+ [進一步了解](#zendesk-learn-more)
+ [備註](#zendesk-notes)

## 支援的功能
<a name="supported-features-zendesk"></a>

Amazon KendraZendesk 資料來源連接器支援下列功能：
+ 欄位對應
+ 使用者存取控制
+ 包含/排除篩選條件
+ 變更日誌、完整和增量內容同步
+ 虛擬私有雲端 (VPC)

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

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

**在 Zendesk 中，請確定您有：**
+ 已建立 Zendesk Suite (Professional/Enterprise) 管理帳戶。
+ 記下您的 Zendesk 主機 URL。例如：*https://\$1sub-domain\$1.zendesk.com/*。
**注意**  
（內部部署/伺服器） 會Amazon Kendra檢查 中包含的端點資訊是否AWS Secrets Manager與資料來源組態詳細資訊中指定的端點資訊相同。這有助於防止[混淆代理人問題](https://docs.aws.amazon.com/IAM/latest/UserGuide/confused-deputy.html)，這是一個安全問題，其中使用者沒有執行動作的許可，但使用 Amazon Kendra做為代理來存取設定的秘密並執行動作。如果您稍後變更端點資訊，則必須建立新的秘密才能同步此資訊。
+ 使用授權碼授予流程設定 OAuth 2.0 身分驗證：

  1. 在管理中心，導覽至應用程式和整合 > APIs > Zendesk API。

  1. 選取 OAuth 用戶端索引標籤，然後按一下「新增 OAuth 用戶端」。

  1. 設定 OAuth 用戶端詳細資訊：設定用戶端名稱和描述、將用戶端類型設定為「機密」、新增適當的重新導向 URLs （例如 https://localhost/callback 進行測試）、儲存並安全地存放產生的用戶端 ID 和用戶端秘密。

  1.  確保 OAuth 用戶端具有所需的「讀取」範圍 （或如果您需要寫入存取權，則為「讀取寫入」)。

  1.  使用授權碼授予流程產生存取字符：
     + 在瀏覽器中，導覽至： `https://{subdomain}.zendesk.com/oauth/authorizations/new?response_type=code&client_id={your_client_id}&redirect_uri={your_redirect_uri}&scope=read`
     +  出現提示時，驗證並授權應用程式。
     +  授權後，Zendesk 會使用程式碼參數 （例如 https://localhost/callback?code=\$1authorization\$1code\$1) 重新導向至 redirect\$1uri。複製授權碼。
     +  將 POST 請求傳送至 Zendesk 的字符端點，以交換存取字符的授權碼：

       ```
       curl -X POST https://{subdomain}.zendesk.com/oauth/tokens \
         -H "Content-Type: application/x-www-form-urlencoded" \
         -d "grant_type=authorization_code&code={authorization_code}&client_id={your_client_id}&client_secret={your_client_secret}&redirect_uri={your_redirect_uri}&scope=read"
       ```
     +  Zendesk 會以包含 access\$1token 的 JSON 物件回應。擷取並安全地存放此存取權杖。

  1. 安全地存放產生的存取權杖。此存取權杖將用於 Kendra 整合。
+ 
**注意**  
建議定期更新或輪換憑證與機密。僅授予作業所需的最低存取層級，以確保自身安全。**我們不**建議您在資料來源以及連接器 1.0 和 2.0 版 （如適用） 之間重複使用登入資料和秘密。
+ **選用：**安裝 SSL 憑證以允許 Amazon Kendra連線。
+ 已檢查每個文件在 Zendesk 中以及您計劃用於相同索引的其他資料來源中都是唯一的。您要用於索引的每個資料來源不得包含跨資料來源的相同文件。文件 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。
+ 將您的 Zendesk 身分驗證憑證存放在AWS Secrets Manager秘密中，如果使用 API， 會記下秘密的 ARN。
**注意**  
建議定期更新或輪換憑證與機密。僅授予作業所需的最低存取層級，以確保自身安全。**我們不**建議您在資料來源以及連接器 1.0 和 2.0 版 （如適用） 之間重複使用登入資料和秘密。

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

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

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

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

**Amazon Kendra連線至 Zendesk** 

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

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

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

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

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

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

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

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

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

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

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

   1. **Zendesk URL** — 輸入您的 Zendesk URL。例如：*https://\$1sub-domain\$1.zendesk.com/*。

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

   1. **AWS Secrets Managersecret** - 選擇現有的秘密或建立新的Secrets Manager秘密，以存放您的 Zendesk 身分驗證憑證。如果您選擇建立新的秘密，則會AWS Secrets Manager開啟秘密視窗。

      1. 使用下列結構建立新的秘密：

         ```
         {
                  "hostUrl": "https://yoursubdomain.zendesk.com/",
                  "accessToken": "your_access_token"
         }
         ```
**注意**  
對於 Kendra 整合，秘密名稱應以 'AmazonKendra-Zendesk-' 開頭，後面接著您選擇的識別符 （例如 'AmazonKendra-Zendesk-MyConnector')。

      1. 儲存並新增您的秘密。

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

   1. **身分爬蟲程式** - 指定是否開啟 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. **IAMrole** - 選擇現有IAM角色或建立新的IAM角色，以存取您的儲存庫登入資料和索引內容。
**注意**  
IAM用於索引的 角色無法用於資料來源。如果您不確定現有角色是否用於索引或常見問答集，請選擇**建立新角色**以避免錯誤。

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

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

   1. **選取內容** - 選取您要從票證中抓取的內容類型，以協助中心文章、社群主題等。

   1. **組織名稱** - 輸入 Zendesk 組織名稱以篩選內容。

   1. **同步開始日期** - 輸入您要開始編目內容的日期。

   1. **Regex 模式** - 新增規則表達式模式，以包含或排除特定檔案。最多可新增 100 個模式。

   1. **同步模式** - 選擇您希望在資料來源內容變更時更新索引的方式。當您Amazon Kendra第一次使用 同步資料來源時，預設會爬取所有內容並編製索引。如果初始同步失敗，即使您未選擇完全同步做為同步模式選項，仍必須執行資料的完整同步。
      + 完全同步：全新編製所有內容的索引，每次資料來源與索引同步時取代現有的內容。
      + 新的、修改過的同步：每次資料來源與索引同步時，僅索引新的和修改的內容。Amazon Kendra 可以使用資料來源的機制來追蹤內容變更，以及自上次同步以來變更的索引內容。
      + 新的、已修改、已刪除的同步：每次資料來源與您的索引同步時，僅索引新的、已修改和已刪除的內容。 Amazon Kendra可以使用資料來源的機制來追蹤自上次同步以來變更的內容和索引內容。

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

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

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

   1. **預設資料來源欄位** - 從您要映射至索引Amazon Kendra的產生預設資料來源欄位中選取 。

   1.  **新增欄位** - 新增自訂資料來源欄位，以建立要映射的索引欄位名稱和欄位資料類型。

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

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

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

**Amazon Kendra連線至 Zendesk**

您必須使用 [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 結構描述`ZENDESK`時，指定資料來源類型。當您呼叫 [https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html](https://docs.aws.amazon.com/kendra/latest/dg/API_CreateDataSource.html) API `TEMPLATE`時，也請將資料來源指定為 。
+ **主機 URL** - 在連線組態或儲存庫端點詳細資訊中提供您的 Zendesk 主機 URL。例如，https：//*https://yoursubdomain.zendesk.com*。
+  **變更日誌** - 是否Amazon Kendra應使用 Zendesk 資料來源變更日誌機制來判斷是否必須在索引中更新文件。
**注意**  
如果您不想Amazon Kendra掃描所有文件，請使用變更日誌。如果您的變更日誌很大，掃描 Zendesk 資料來源中的文件所需的時間可能比處理變更日誌Amazon Kendra更短。如果您是第一次將 Zendesk 資料來源與索引同步，則會掃描所有文件。
+ **機密 Amazon Resource Name (ARN)** — 提供Secrets Manager機密的 Amazon Resource Name (ARN)，其中包含 Zendesk 帳戶的身分驗證憑證。秘密會以下列金鑰存放在 JSON 結構中：

  ```
  {
      "hostUrl": "https://yoursubdomain.zendesk.com",
      "clientId": "client ID",
      "clientSecret": "Zendesk client secret",
      "userName": "Zendesk user name",
      "password": "Zendesk password"
  }
  ```
+ **IAMrole** - 指定`RoleArn`您何時呼叫 `CreateDataSource` 以提供IAM角色存取Secrets Manager秘密的許可，以及呼叫 Zendesk 連接器所需的公有 APIs 和 Amazon Kendra。如需詳細資訊，請參閱 [IAMZendesk 資料來源的角色](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)。
+  **文件/內容類型** - 指定是否要爬取：
  + 支援票證、票證註解和/或票證註解附件
  + 說明中心文章、文章附件和文章評論
  + 指引社群主題、文章或文章評論
+  **包含和排除篩選條件** - 指定是否包含或排除特定 Slack 內容。如果您使用機器人字符做為 Slack 身分驗證登入資料的一部分，則必須將機器人字符新增至要編製索引的頻道。您不能使用機器人字符為直接訊息和群組訊息編製索引。
**注意**  
大多數資料來源使用規則表達式模式，作為包含或排除的篩選規則，稱為篩選條件。若您設定包含篩選條件，則只有符合該條件的內容會被編列索引。任何不符合包含篩選條件的文件都不會編製索引。如果您指定包含和排除篩選條件，則符合排除篩選條件的文件不會編製索引，即使它們符合包含篩選條件。
+  **使用者內容篩選和存取控制** —Amazon Kendra 如果您有文件的 ACL， 會編目文件的存取控制清單 (ACL)。ACL 資訊用於根據使用者或其群組對文件的存取來篩選搜尋結果。如需詳細資訊，請參閱[使用者內容篩選](https://docs.aws.amazon.com/kendra/latest/dg/user-context-filter.html#datasource-context-filter)。
+  **欄位映射** - 選擇將 Zendesk 資料來源欄位映射至您的Amazon Kendra索引欄位。如需詳細資訊，請參閱[映射資料來源欄位](https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html)。
**注意**  
需要文件內文欄位或文件內文對等項目， Amazon Kendra才能搜尋您的文件。您必須將資料來源中的文件內文欄位名稱映射至索引欄位名稱 `_document_body`。所有其他欄位是選用的。

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

------

## 進一步了解
<a name="zendesk-learn-more"></a>

若要進一步了解Amazon Kendra如何與您的 Zendesk 資料來源整合，請參閱：
+ [透過Amazon Kendra智慧型搜尋從 Zendesk 探索洞見](https://aws.amazon.com/blogs/machine-learning/discover-insights-from-zendesk-with-amazon-kendra-intelligent-search/)

## 備註
<a name="zendesk-notes"></a>
+ 啟用存取控制清單 (ACLs) 時，由於 Zendesk API 限制，無法使用「僅同步新的或修改的內容」選項。建議改用「完整同步」或「新增/修改/刪除內容同步」模式；若需使用此模式，請停用 ACL。