AWS Cognito托管UI-是否可以配置为使用自定义URL?

时间:2018-07-18 13:12:57

标签: amazon-web-services amazon-cognito

我确实设置了Cognito托管用户界面,但是目前,要访问登录屏幕,我们必须访问此丑陋的链接

  

https:// {...} .auth.us-east-1.amazoncognito.com / login?response_type = code&client_id = {...}&redirect_uri = {...}

这并不是我们想要的,我们希望使用更干净的东西(例如login.ourdomain.com,其所有与客户无关的参数都被遮盖了)。我们希望使用Route 53之类的工具,在其中可以为Elastic Beanstalk应用程序设置漂亮的链接。

所以我想问-这可能吗?如何?关于此主题的信息非常匮乏-在一篇文章中,我们了解到TLS证书对于此而言是必要的。我们有它,但仍然不知道如何设置它。

非常感谢。

1 个答案:

答案 0 :(得分:1)

是的,可以使用您自己的域。我假设您想要一个子域,例如id.your-domain.com

首先,您需要在Amazon的“ AWS证书管理器”中拥有要使用的子域的证书。您可以在ACM中创建或导入证书,如果您的域是通过AWS注册的,则使用控制台非常容易。根据我的经验,无论用户池位于哪个区域,证书都必须位于us-east-1区域。

在ACM中拥有证书后,转到托管UI的域配置,然后出现“您自己的域”部分,您可以在其中输入子域并选择适当的证书。当您单击创建按钮时,它将为该子域(使用AWS托管UI)创建一个Cloudfront分发,并为您提供分发地址(Alias目标)-复制下来。请注意,云前端分发可能需要几分钟的时间。

转到route53(或配置DNS),然后添加域的记录集。它应该是A记录,这是您上面提到的Cloudfront分布(别名)的别名。创建记录并开始喝咖啡,DNS和cloudfront有望在15分钟内自行解决,您可以将域用于托管UI。

例如https://<your-domain>/login?response_type=token&client_id=<client-id>&redirect_uri=<redirect-uri>