首页 > 解决方案 > 如何从 Lambda API 网关的 Javascript 页面调用 Cognito 用户池进行身份验证

问题描述

我有 Amazon Connect 自定义控制面板,代理可以在其中接听电话。我开发了定制的 HTML 屏幕,代理可以在其中输入客户详细信息并保存到数据库中。为了节省,我正在使用 API 网关调用 lambda 函数。我正在从 HTML 页面调用网关 URL。现在,我想使用已集成 Active Directory 的 Cognito 用户池来保护 API 网关 URL。我找到了几个解决方案,但他们正在向 authenticateUser 方法发送密码。所以它会在 HTML 页面中暴露密码。有什么办法可以避免这种情况吗?

谢谢,甘斯

标签: amazon-web-servicesamazon-cognitoaws-sam-cliamazon-connectamazon-javascript-sdk

解决方案


您需要使用通过 SAML 集成到 Amazon Connect 和 Cognito 的单一身份提供商。这是对用户进行一次身份验证并利用身份/令牌对 Connect CCP 和 API 网关进行授权(通过 Cognito 授权方)的唯一方法。在这种情况下,您需要启动一个具有 SAML 集成的新 Amazon Connect 实例,然后在 Cognito 中配置一个身份池,而不是用户池,因为它允许您与基于 SAML 的身份提供商集成。

如果您想在 Cognito 中使用用户池,则需要在加载应用程序时启动辅助用户名/密码对话框,以在用户通过 Amazon Connect 身份验证后捕获 Cognito 凭证。


推荐阅读