首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >设置django-oauth-toolkit后无法访问管理面板

设置django-oauth-toolkit后无法访问管理面板
EN

Stack Overflow用户
提问于 2019-05-29 15:21:37
回答 2查看 880关注 0票数 3

我有一个没有认证的pet(测试api)。我正在努力学习如何实现oath2来为我的应用程序添加安全性。

我想通过使用API的请求调用来访问我的应用程序的模型,也可以通过Django管理面板访问。

我正在学习本教程:https://medium.com/@halfspring/guide-to-an-oauth2-api-with-django-6ba66a31d6d

用于设置:django-oauth-toolkit

教程说我应该将这段代码添加到设置中:

代码语言:javascript
复制
 AUTHENTICATION_BACKENDS = (
     'django.contrib.auth.backends.ModelBackend' # To keep the Browsable API
     'oauth2_provider.backends.OAuth2Backend',
 )

但是,当我运行服务器并尝试访问/admin时,我得到:

代码语言:javascript
复制
ModuleNotFoundError at /admin/login/
No module named 'django.contrib.auth.backends.ModelBackendoauth2_provider'; 'django.contrib.auth.backends' is not a package

如果我评论一下:

代码语言:javascript
复制
# 'django.contrib.auth.backends.ModelBackendoauth2_provider'; 

我可以访问登录界面,但是我说我的用户或密码是错误的(他们不是)。

注释这两行,我可以毫无问题地访问管理面板:

代码语言:javascript
复制
#AUTHENTICATION_BACKENDS = (
    # 'django.contrib.auth.backends.ModelBackend' # To keep the Browsable API
    # 'oauth2_provider.backends.OAuth2Backend',
#) 
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-26 09:27:27

代码中有错误,

代码语言:javascript
复制
AUTHENTICATION_BACKENDS = (
 'django.contrib.auth.backends.ModelBackend' # To keep the Browsable API
 'oauth2_provider.backends.OAuth2Backend',
)

(,)之后缺少一个逗号'django.contrib.auth.backends.ModelBackend',因此它将两行作为单行,正如您在错误中看到的那样。

所以你需要

代码语言:javascript
复制
AUTHENTICATION_BACKENDS = (
 'django.contrib.auth.backends.ModelBackend', # To keep the Browsable API
 'oauth2_provider.backends.OAuth2Backend',
)

现在会成功的..。

票数 4
EN

Stack Overflow用户

发布于 2019-06-19 18:22:40

没关系,没有它我的工作也很顺利。我也在遵循这一指南。继续http://127.0.0.1:8000/o/applications

顺便说一下,我还在对ALLOWED_HOSTS = ['0.0.0.0']进行注释,在用户/views.py上,我将所有的http://0.0.0.0:8000更改为http://127.0.0.1:8000

现在我得到了这些:

代码语言:javascript
复制
{
    "access_token": "C2qukd1zWz9aGSp652qbnpYjoT6ZRx",
    "expires_in": 36000,
    "token_type": "Bearer",
    "scope": "read write",
    "refresh_token": "UoI0r9J09F3kcXGO1q3KsYoGHQ9DBw"
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56363885

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档