基于Wagtail的早期检测研究网络认证和授权
项目描述
🔑 EDRN Auth
这是一个 Django 应用程序(即 Python 软件包),为 早期检测研究网络门户 和其他应用程序提供认证和授权。您可以使用 Wagtail CMS。
目前它支持
💁 如何使用它
只需将 edrn.auth
添加到依赖项列表并安装它(例如在 requirements.txt
或 pyproject.toml
的 dependencies)
中),然后在您网站的 INSTALLED_APPS
中添加它。接下来,您将在自己的 urls.py
中使用类似以下内容导入 edrn.auth
的URL模式
from edrn.auth.urls import urlpatterns as edrn_auth_urlpatterns
…
urlpatterns = edrn_auth_urlpatterns + [
# your own URL patterns
]
这将为您提供多个URL路径
_util/login/
用于登录,覆盖Wagtail前端登录模板,包含完整的美国政府样板文本以及三种登录选项(门户、LabCAS、DMCC“安全”站点)_util/portal-login
(命名为portal_login
),用于登录,包含完整的美国政府样板文本,但只有门户登录(LabCAS和DMCC“安全”站点未提及)logout/
(命名为logout
),用于登出authentication-test
(命名为authentication-test
),用于测试凭据是否有效,使用HTTP Basic
您可以从 edrn.auth.views
导入几个实用程序,下面将对其进行描述。
🔐 view_or_basicauth
view_or_basicauth
作为一个装饰器与一个测试函数 test_func
一起使用。期望 test_func
接收一个参数,即Django的 HTTPRequest.user
。
如果测试函数成功,则返回装饰后的视图。否则,如果HTTP Basic身份验证存在且成功,则返回装饰后的视图。
否则,返回HTTP "未经授权" 状态,并带有HTTP Basic挑战。
🔒 logged_in_or_basicauth
装饰器 logged_in_or_basicauth
只使用上面的视图,将 test_func
设置为 user.is_authenticated
。
🔏authentication_context
函数 authentication_context
接受一个Django HTTPRequest
,根据其状态,返回一个包含以下值的字典
authenticated
:如果存在已验证用户,则为True
,否则为False
logout
:要访问以使当前用户登出的URL,如果适用login
:要访问以呈现完整的登录页面(包含三个替代目的地:门户、LabCAS和DMCC“安全”站点)的URLportal_login
:要访问以呈现仅门户登录页面的URL
此功能旨在在 get_context
方法或视图中使用,以提供方便的链接。
🥖 翻译
此软件包除US English外,尚未翻译成任何其他语言。
👏 贡献
我们期望此软件包的所有开发人员都遵守我们的 行为准则。请查看!我们对此事非常认真,并对我们的社区有高标准。有关如何向早期检测研究网络贡献软件的信息,请参阅我们的 贡献指南。
🎈 支持
如果您遇到问题,请查看是否已提交问题(或提交一个新问题)到我们的 问题跟踪器。或者您可以通过 电子邮件 联系我们。
🪪 许可证
此软件包根据Apache许可证版本2授权。有关详细信息,请参阅 LICENSE.md
文件。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。