为托管的通信小部件启用客户身份验证 - Amazon Connect

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

为托管的通信小部件启用客户身份验证

本主题将介绍如果您使用 Amazon Connect 托管的聊天通信小部件,如何设置身份验证。您为 Amazon Connect 实例启用了客户身份验证,然后启用了一条身份验证消息,该消息显示一个链接,点击后会弹出 Amazon Cognito 托管 UI。

所需的 IAM 策略

如果您使用自定义 IAM 策略来管理对 Amazon Connect 控制台的访问权限,请参阅自定义 IAM 策略所需的权限以获取访问客户身份验证页面所需权限的列表。

在您的 Amazon Connect 实例中启用客户身份验证

  1. 打开 Amazon Connect 控制台,网址为 https://console.aws.amazon.com/connect/

  2. 在“实例”页面上,选择实例别名。实例别名也是您的实例名称,该名称显示在您的 Amazon Connect URL 中。下图显示了 Amazon Connect 虚拟联络中心实例页面,其中,实例别名周围有一个方框。

    “Amazon Connect 虚拟联络中心实例”页面,实例别名。
  3. 在左侧导航菜单上,选择应用程序客户身份验证。如果您看不到此选项,则您所在 AWS 区域可能无法提供此选项。有关客户身份验证可用区域的信息,请参见按区域显示的客户身份验证可用性

  4. 客户身份验证页面上,选择在 Amazon Cognito 中创建用户池。这样可打开 Amazon Cognito 控制台。

  5. 使用您的身份提供商创建新的用户池。有关说明,请参阅《Amazon Cognito 开发人员指南》中的用户池入门

    注意

    当您配置 Amazon Cognito 应用程序客户端时,必须选择不生成客户端密钥。只支持不带客户端密钥的 Amazon Cognito 应用程序客户端。有关更多信息,请参阅《Amazon Cognito Developer Guide》中的 Application-specific settings with app clients

  6. 在创建 Amazon Cognito 用户池后,返回到客户身份验证页面,然后选择关联用户池

  7. 用户池部分,从下拉菜单中选择您创建的用户池,然后选择确认

    这样会将用户池关联到您的 Amazon Connect 实例。它使验证客户身份流数据块能够访问用户池。

  8. 继续执行下一步:启用身份验证消息

启用身份验证消息

要启用身份验证消息,请在代码片段末尾添加身份验证参数片段变量。有关添加片段变量的信息,请参阅Amazon Connect 中支持可自定义的小部件片段字段。以下代码是您需要添加的身份验证参数片段的示例。

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

其中:

  • redirectUri 是您在 IdP(身份提供商)和 Amazon Cognito 中配置的重定向 URI。这是您的客户登录后自动定向之处。在此页面中,您可以检查 URL 参数,如果有代码和状态,则可以使用这些值调用 UpdateParticipantAuthentication API。API 调用完成后,关闭弹出窗口;客户将返回聊天体验。

  • identityProvider 是您在 Amazon Cognito 中配置的身份提供商名称。该字段是可选的。如果提供了一个值,则登录链接会自动将客户引导到身份提供商的登录页面,而不是 Amazon Cognito 管理的登录页面,客户在该页面上需要选择用于登录的身份提供商。

当流到达验证客户身份数据块时,您可以注册回调并将状态存储在本地,以便在重定向 URI 中进行验证,如下面的示例代码片段中所示:

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

启用客户身份验证后,在流中添加一个验证客户身份数据块。此数据块可在流中对聊天联系进行身份验证,并根据身份验证结果将他们引导到特定路径。