【发布时间】:2017-10-29 07:17:50
【问题描述】:
我对 Cognito 的理解是,它可以用来代替本地 Django 管理数据库来验证网站用户的身份。但是,我没有找到任何带有通过 Cognito 的登录屏幕的基本“Hello, World”应用程序的简单示例。如果有人能发布一篇文章,逐步说明如何创建 Hello World Django 应用程序和 Cognito 用户池,以及如何用调用 AWS 替换 Django 中的默认身份验证,我将不胜感激认知。
我特别需要知道如何从 Cognito 管理站点收集信息,这些信息是设置对 Cognito API 的调用以验证用户身份所需的。
有两种情况需要考虑:App 用户登录 App,以及 Admin 登录到站点的 django Admin URL。我假设我想在这两种情况下都使用 Cognito,否则我会留下一个潜在的漏洞,即 Admin URL 使用的是较弱的登录技术。
AWS 论坛和 StackExchange 上的当前答案要么说:
(1) 使用 Cognito 验证网站是浪费时间,它只是为了访问 AWS 资源
(2) 这不是浪费时间。我快要放弃了。我已经创建了一个示例 Cognito 用户池和用户组,并在网上搜索此用例的适当示例。 (没有找到,否则我不会写。)
(3) https://github.com/capless/warrant、https://github.com/metametricsinc/django-warrant 是来自 aws 论坛的两种可能的解决方案。
【问题讨论】:
-
我在同一条船上。计划将 Cognito 用于移动原生应用程序和 Django 服务器后端背后的联合社交登录。真的很惊讶,那里至少没有一个身份验证后端。
-
我想用它来让我的网站看起来很漂亮,使用 2 因素身份验证,但除非他们开辟道路,否则它太复杂了。我发现 AWS for Python 上的“操作方法”指南往往已经过时,而且他们没有投入任何精力来更新它们。我在AWS Forum 上提出了同样的问题,但亚马逊技术人员尚未回复。
标签: python django amazon-web-services authentication amazon-cognito