

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

# 啟用託管通訊小工具的客戶身分驗證
<a name="enable-connect-managed-auth"></a>

本主題說明如何在使用 Amazon Connect 託管通訊小工具進行聊天時設定身分驗證。您可以為 Amazon Connect 執行個體啟用客戶身分驗證，然後啟用身分驗證訊息，顯示開啟 Amazon Cognito 託管 UI 快顯視窗的連結。

## 必要的 IAM 政策
<a name="auth-page-iam-policies"></a>

如果您使用自訂 IAM 政策來管理對 Amazon Connect 主控台的存取，請參閱 [自訂 IAM 政策的必要許可](security-iam-amazon-connect-permissions.md) 以取得存取**客戶身分驗證**頁面所需的許可清單。

## 在 Amazon Connect 執行個體中啟用客戶身分驗證
<a name="enable-customer-auth"></a>

1. 在 [https://console.aws.amazon.com/connect/](https://console.aws.amazon.com/connect/) 開啟 Amazon Connect 主控台。

1. 在執行個體頁面上，選擇執行個體別名。執行個體別名也是您的**執行個體名稱**，它會出現在您的 Amazon Connect URL 中。下圖顯示 **Amazon Connect 虛擬聯絡中心執行個體**頁面，其中包含執行個體別名周圍的方塊。  
![\[Amazon Connect 虛擬聯絡中心執行個體頁面，即執行個體別名。\]](http://docs.aws.amazon.com/zh_tw/connect/latest/adminguide/images/instance.png)

1. 在左側導覽功能表中，選擇**應用程式**、**客戶身分驗證**。如果您沒有看到此選項，則可能不適用於您的 AWS 區域。如需客戶身分驗證可用位置的詳細資訊，請參閱 [客戶身分驗證可用性 (按區域)](regions.md#customerauthentication_region)。

1. 在**客戶身分驗證**頁面上，選擇**在 Amazon Cognito 中建立使用者集區**。這樣會開啟 Amazon Cognito 主控台。

1. 透過您的身分提供者建立新的使用者集區。如需指示，請參閱《Amazon Cognito 開發人員指南》**中的[開始使用使用者集區](https://docs.aws.amazon.com/cognito/latest/developerguide/getting-started-user-pools.html)。
**注意**  
當您設定 Amazon Cognito 應用程式用戶端時，必須選取**不要產生用戶端密碼**。僅支援沒有用戶端密碼的 Amazon Cognito 應用程式用戶端。如需詳細資訊，請參閱《Amazon Cognito 開發人員指南》**中的[使用應用程式用戶端的特定應用程式設定](https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-settings-client-apps.html)。

1. 建立 Amazon Cognito 使用者集區之後，請返回**客戶身分驗證**頁面，然後選擇**關聯使用者集區**。

1. 在**使用者集區**區段中，從下拉式功能表中選擇您建立的使用者集區，然後選擇**確認**。

   這會將使用者集區與您的 Amazon Connect 執行個體建立關聯。它可讓 [驗證客戶](authenticate-customer.md) 流程區塊存取使用者集區。

1. 繼續至下一個步驟：[啟用身分驗證訊息](#enable-auth-message)。

## 啟用身分驗證訊息
<a name="enable-auth-message"></a>

若要啟用身分驗證訊息，請在程式碼片段結尾新增身分驗證參數程式碼片段變數。如需新增程式碼片段變數的詳細資訊，請參閱 [Amazon Connect 中支援的可自訂小工具程式碼片段欄位](supported-snippet-fields.md)。下列程式碼是您需要新增的身分驗證參數程式碼片段範例。

```
amazon_connect('authenticationParameters', { 
    redirectUri: 'your_redirect_url', // https://example.com 
    identityProvider: 'your_identity_provider_name' //optional
 });
```

其中：
+ `redirectUri` 是您在 IdP (身分提供者) 和 Amazon Cognito 中設定的重新導向 URI。這是您的客戶在登入後自動導向的位置。在此頁面上，您可以檢查 URL 參數，如果有程式碼和狀態，您可以使用這些值呼叫 [UpdateParticipantAuthentication](https://docs.aws.amazon.com/connect/latest/APIReference/API_UpdateParticipantAuthentication.html) API。API 呼叫完成後，請關閉快顯視窗；客戶會回到聊天體驗。
+ `identityProvider` 是您在 Amazon Cognito 中設定的身分提供者名稱。此欄位為選用欄位。如果提供值，則登入連結會自動將客戶導向身分提供者的登入頁面，而不是 Amazon Cognito 受管登入頁面，客戶必須在其中選取要用於登入的身分提供者。

 當流程到達 [驗證客戶](authenticate-customer.md) 區塊時，您可以註冊回撥並在本機儲存狀態，以在重新導向 URI 中驗證，如下列範例程式碼片段所示：

```
amazon_connect('registerCallback', {
       'AUTHENTICATION_INITIATED' : (eventName, data) => {
            console.log(data.state)
        },
      });
```

啟用客戶身分驗證後，請將 [驗證客戶](authenticate-customer.md) 區塊新增至流程。此區塊會在流程期間驗證聊天聯絡，並根據身分驗證結果將其轉接到特定路徑。