gpt4 book ai didi

Django 微软 AD 身份验证

转载 作者:行者123 更新时间:2023-12-03 04:42:37 26 4
gpt4 key购买 nike

我注意到这个问题重复了几次,但是,从所有资源来看,我仍然无法使其正常工作。

我只是尝试在我的 Django 应用程序中使用 Azure Active Directory 身份验证。我正在使用this模块,并且我按照文档中的说明配置了所有内容。

问题是 - 我无法弄清楚用户应该在哪里输入凭据 - 因为该模块只有一个 url ('auth-callback/')。我不知道如何跳转到 Microsoft 登录 html 页面。我应该使用我的login.html 还是?

另外,我猜“auth-callback/”url 显然是一个回调 URL,位于登录页面之后。

我使用 django auth.views LoginView 进行登录,以及自定义 login.html 页面。

就重定向 URI 而言,我将重定向 URI 配置为直接匹配“http://localhost:8000/microsoft/auth-callback/”url,我猜这也是需要的方式。

主要问题是 - 我在哪里可以输入登录凭据? :)

此外,当我尝试此操作时 - 我在管理员登录页面上收到无效凭据错误:

Start site and go to /admin and logout if you are logged in.
Login as Microsoft/Office 365/Xbox Live user. It will fail. This will automatically create your new user.
Login as a Password user with access to change user accounts.

快速编辑:

我注意到当我进入控制台内的 django/admin 页面“..../admin/login”时出现此错误:

https://static/microsoft/css/login.css Failed to load resource (404)
https://static/microsoft/js/login.js Failed to load resource (404)

我在哪里可以获得这些文件?

让我们跳到我的代码:

  1. 设置.py
INSTALLED_APPS = [
...
'django.contrib.sites',
'microsoft_auth',
...
]

#Choped from templates
'context_processors': [
...
'microsoft_auth.context_processors.microsoft',
],


AUTHENTICATION_BACKENDS = [
'microsoft_auth.backends.MicrosoftAuthenticationBackend',
'django.contrib.auth.backends.ModelBackend',
]


SITE_ID = 1


LOGIN_REDIRECT_URL = 'main:index'
LOGOUT_REDIRECT_URL = 'main:index'

LOGIN_URL = '/'
LOGOUT_URL = '/'

# AZURE AUTH CONFIG
MICROSOFT_AUTH_CLIENT_ID = 'THIS IS MY CLIENT KEY'
MICROSOFT_AUTH_CLIENT_SECRET = 'THIS IS MY SECRET KEY'
MICROSOFT_AUTH_TENANT_ID = 'THIS IS MY TENANT KEY'

# include Microsoft Accounts, Office 365 Enterpirse and Azure AD accounts
MICROSOFT_AUTH_LOGIN_TYPE = 'ma'

还有我的 urls.py

...
path('microsoft/', include('microsoft_auth.urls', namespace='microsoft')),
...

提前谢谢大家。

最佳答案

django-microsoft-auth 使用标准 django 登录页面并对其进行扩展。我的猜测是您的自定义登录页面会干扰这一点。您可以尝试删除该 View 并再次测试以查看登录名是否出现在/admin 处。

这些文件应该来自 django-microsoft-auth 包。您可以尝试使用 pip 卸载并重新安装

关于Django 微软 AD 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66043316/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com