我对Cognito的解读是,它可以代替本地Django管理数据库来验证网站用户.但是,我没有找到任何一个基本的"Hello,World"应用程序的例子,其中登录屏幕通过Cognito.如果有人可以发布一篇文章,逐步展示如何创建Hello World Django应用程序和Cognito用户池,以及如何通过调用AWS替换Django中的默认身份验证,我将非常感激. Cognito.
特别是我需要知道如何从Cognito管理站点收集设置对Cognito API的调用以验证用户所需的信息.
有两种情况需要考虑:App用户登录App,管理员登录django站点管理URL.我假设我想在两种情况下使用Cognito,否则我将留下一个潜在的漏洞,其中Admin URL使用较弱的登录技术.
AWS论坛和StackExchange上的当前答案要么说:
(1)使用Cognito对网站进行身份验证是浪费时间,它仅用于访问AWS资源
(2)这不是浪费时间.我即将放弃.我已经创建了一个示例Cognito用户池和用户组,并在网上搜索此用例的正确示例.(没有找到,或者我不会写.)
(3)https://github.com/capless/warrant,https://github.com/metametricsinc/django-warrant是从AWS论坛两种可能的解决方案.
python authentication django amazon-web-services amazon-cognito
在html视图中,图像显示如下:
<img ng-src="{{element.image.url}}">
Run Code Online (Sandbox Code Playgroud)
element.image.url指向一个网址:/rest_api/img/12345678.
这工作正常,显示图像.
现在,我添加身份验证:
在对用户进行身份验证之前,每个资源都会响应一个http错误401,图像也是如此.验证成功后,会将令牌放在自定义标头中,并与每个$ http请求一起发送,以允许访问资源:
$http.defaults.headers.common['Authorization'] = token;
Run Code Online (Sandbox Code Playgroud)
这适用于加载$ resource的Json文件.但是在认证之后,到图像的直接链接仍然是401.
如何使用自定义标题调用图像?
或者关于我应该怎么做的任何建议.
我正在使用最新的Django OAuth2 Toolkit(0.10.0)和Python 2.7,Django 1.8和Django REST框架3.3
使用时grant_type=password,我注意到一些奇怪的行为,任何时候用户要求新的访问令牌:
curl -X POST -d "grant_type=password&username=<user_name>&password=<password>" -u"<client_id>:<client_secret>" http://localhost:8000/o/token/
Run Code Online (Sandbox Code Playgroud)
一个新的访问令牌和刷新令牌创建.在令牌超时之前,旧的访问和刷新令牌仍然可用!
我的问题:
我发现的一个解决方案是REST Framework OAuth一次为一个访问令牌提供配置.我并不急于使用该提供商,但我可能不会有选择.
考虑这个简单的程序:
fails.c:
#include <stdio.h>
int main(){
int i = 10;
if (i == 10)
int j = 11;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
无法编译(gcc fails.c),给出此错误:
fails.c: In function ‘main’:
fails.c:7:3: error: expected expression before ‘int’
int j = 11;
^
Run Code Online (Sandbox Code Playgroud)
但是这个很顺利:
#include <stdio.h>
int main(){
int i = 10;
if (i == 10){
int j = 11;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我认为工作的目的是把它们放进{}去.但我想知道为什么这是必需的.
为什么它会以这种方式表现出来printf?
#include <stdio.h>
int main(){
int i = 10;
if (i == 10) …Run Code Online (Sandbox Code Playgroud) 我有一个活动模型,每个活动都有不同的节目.
class Event(models.Model):
title = models.CharField(max_length=200)
class Show(models.Model):
event = models.ForeignKey(Event, on_delete=models.CASCADE)
date_time = models.DateTimeField(unique=True)
Run Code Online (Sandbox Code Playgroud)
我有另一个Ticket模型.每张票都应该是唯一的.这意味着每张票都是唯一的,并与Show和Seat相关.
class Ticket(models.Model):
show = models.ForeignKey(Show)
seat = models.ForeignKey(Seat)
class Meta:
unique_together = ('show', 'seat')
Run Code Online (Sandbox Code Playgroud)
我需要根据用户提供的开始日期和结束日期创建节目.假设这是一个JSON帖子:
{
"event_id": 1,
"start_date": "2018-02-16",
"end_date": "2018-02-20",
"time_list": ["11:00 AM", "8:00 PM"]
}
Run Code Online (Sandbox Code Playgroud)
从上面的JSON示例中,我需要创建Show start,如下所示:
# Start with the start_date as the date, and for each time from the time_list
Show.objects.create(
event = 1,
date_time = datetime.strptime('2018-02-16 11:00 AM', "%Y-%m-%d %I:%M %p")
)
Show.objects.create(
event = 1,
date_time = …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用python从我的office365公司帐户发送电子邮件.我是python的新手.此代码以前在使用我的hotmail帐户时有效,但是现在我需要发送机密信息,我必须使用我的公司电子邮件.
我尝试了几件事.
535 5.7.3 Authentication unsuccessful我不清楚证书部分,但我的步骤包括,在线查找如何导出证书.使用chrome浏览器,microsoftonline.com有一个链证书.我可以导出root和根目录下面的级别,但不能导出最后一级.我不知道如何传递这两个文件,所以我只是传递了根证书.此时我收到错误:ssl.SSLError: [SSL] PEM lib (_ssl.c:3309)
我陷入了困境.任何帮助表示赞赏.代码如下
import smtplib
mailserver = smtplib.SMTP('smtp.office365.com',587)
mailserver.ehlo()
mailserver.starttls(certfile='office365.cer')
mailserver.ehlo()
mailserver.login('user@company.co', 'password')
mailserver.sendmail('user@company.co','user@company.co','python email')
mailserver.quit()
Run Code Online (Sandbox Code Playgroud) 我坚持使用我的TitanDB,Django1.8和Mogwai0.7.7软件包.我在localhost dev机器上有Graph数据库titan/cassandra,在rexster gremlin web界面中创建错误查询后,我的Django Object Graph Mapper mogwai停止工作.Titan仍在工作,数据存在,但Django停止使用它.
文件"/Users/x/envs/graph/lib/python2.7/site-packages/rexpro/connectors/base.py",第281行,在close_transaction中引发exceptions.RexProScriptException("事务未打开")RexProScriptException:transaction不开放.
谷歌搜索后我发现这个bitbucked修复 但我不知道如何应用它.也许lib更新与pip ....请帮助.
我有一个架构问题.我正在使用Django(使用管理面板)和DRF(使用JWT进行无状态身份验证的api).
Django具有由模型表示的Admin用户,该用户与默认的Django用户模型大致相同.管理员仅使用Django Admin,不能使用DRF api.
DRF有API用户,只允许通过DRF使用api,不能与Django Admin或Django Session等交互.
我知道最好的方法是使用多模型继承,如:
class User(DjangoUserModel):
pass
class Admin(User):
pass
class API(User):
pass
AUTH_USER_MODEL = "User"
Run Code Online (Sandbox Code Playgroud)
但问题是,那些用户完全不同.例如:API用户具有复杂的复合键作为用户名字段,这与简单的Admin用户名字段无法组合.还有很多其他的差异...
问题是:我可以使用不是AUTH_USER_MODELDRF实例的用户对象吗?所以self.request.user将存储一个没有以任何方式连接的模型实例AUTH_USER_MODEL.你们有没有做过类似的事情?
我已经浏览了Django OAuth Toolkit的提供者和资源的文档,但我能找到的只是how to 'authenticate' a user,而不是register用户的方式.
我可以在我的机器上设置所有内容,但不知道如何使用用户名和密码注册用户.我知道我错过了一些非常微妙的东西.如何准确注册用户并获取访问令牌以回复与我的资源服务器通信.
要么
是不是我首先使用普通的Django机制注册用户,然后获得相同的令牌?
python django django-registration django-rest-framework django-oauth
这是一个奇怪的问题,这是一些难以产生和探索的问题.
在使用Angular构建Web应用程序时,我的老板发现应用程序中使用ng-click指令的所有按钮都不起作用.
现在,这个问题只发生在iphone 6 with IOS 8.3 and using the safari browser.
我可以说,当在iPhone5(所有版本),iPhone 6(IOS 9),Safari for Windows和所有其他浏览器(移动和桌面)上进行测试时,ng-click就像一个魅力.
该应用程序正在使用Angular 1.4.3.
这是按钮的代码,正如您所看到的,没有什么特别之处:
<button class="btn calculate-button" ng-click="onCalculate()">Calculate</button>
Run Code Online (Sandbox Code Playgroud)
在控制器中:
$scope.onCalculate = function () {
//Do something... And then:
$state.go('someplace');
};
Run Code Online (Sandbox Code Playgroud)
我想在这里提出了许多变化,包括ng-touch,ng-bind,建设自己的点击指令,如下所示:
.directive('basicClick', function($parse, $rootScope) {
return {
compile: function(elem, attr) {
var fn = $parse(attr.basicClick);
return function(scope, elem) {
elem.on('click', function(e) {
fn(scope, {$event: e});
scope.$apply();
});
};
}
};
});
Run Code Online (Sandbox Code Playgroud)
找不到适合该问题的解决方案. …