Python Social Auth的Kerberos身份验证后端
项目描述
此软件包提供Python Social Auth的Kerberos后端。它可以用于在Django应用程序或其他支持Python Social Auth的应用程序内启用无密码认证。这是一个纯Python实现,不依赖于Apache mod_auth_kerb。
安装
要安装
pip install social-auth-kerberos
警告:由于gssapi依赖项不提供二进制软件包,您需要gcc、Python和kerberos开发包来构建。尝试使用以下命令(Red Hat/Fedora):dnf install gcc krb5-devel python3-devel 或(Debian/Ubuntu):apt-get install gcc libkrb5-dev libpython3-dev。
配置
配置Python Social Auth 并确保您已启用以下设置
AUTHENTICATION_BACKENDS = [ 'social_auth_kerberos.backend.KerberosAuth', 'django.contrib.auth.backends.ModelBackend', ] SOCIAL_AUTH_KRB5_KEYTAB = '/Kiwi/your-application.keytab'
重要
您的Kiwi TCMS网络服务的主体名称必须是 HTTP/<fqdn.example.com>@REALM.EXAMPLE.COM,其中 fqdn.example.com 是Kiwi TCMS服务器的域名,而 REALM.EXAMPLE.COM 是您组织使用的Kerberos域。
/Kiwi/your-application.keytab 是您的 Web 应用程序主程序的关键表文件!如果您将其安装在 Docker 容器中,请确保 chown 1001:root!
管道配置
Python 社交认证,以及扩展到此插件,将在首次访问 Web 界面时创建新的用户帐户。在 Kiwi TCMS 中,用户必须属于特殊组 Tester 或有足够的权限来添加/编辑/删除对象。
如果您将 social_auth_kerberos.pipeline.initiate_defaults 添加到 SOCIAL_AUTH_PIPELINE 设置的末尾,可以自动将新帐户分配给 Tester 组。
警告: 这不是自动完成的,因为一些管理员可能希望对新注册的帐户采用不同的行为!
Kerberos 配置
有关 Kerberos 的更多信息,请参阅
或查看 tests/Dockerfile.kerberos。
变更日志
v0.3.0 (2023 年 12 月 17 日)
将 gssapi 从 1.6.12 更新到 1.8.3
将 social-auth-core 从 4.0.1 更新到 4.5.1
记录编译 gssapi 的必要性。修复了 问题 #3
使用 Python 3.11 和 Kiwi TCMS v12.7 进行构建和测试
删除未使用的导入
v0.2.4 (2020 年 3 月 24 日)
添加 social_auth_kerberos.pipeline,其中包含初始化新创建帐户默认权限的功能。请参阅 管道配置 部分
更新 README,提供有关如何配置此插件的信息
启用与 Kerberos 的集成测试和覆盖率收集
v0.2.3 (2020 年 3 月 22 日)
在检查任何其他内容之前保持对当前用户的引用。解决了客户端知道服务器已启用 Kerberos 并直接发送授权头的崩溃问题
对不匹配 RFC-4459 第 4.2 节的授权请求头更宽容
v0.2.2 (2019 年 11 月 10 日)
将许可证版本锁定为 GPLv2 以适用于 Tidelift
v0.2.1 (2018 年 12 月 10 日)
初始发布
项目详情
下载文件
下载适合您的平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
构建分布
social-auth-kerberos-0.3.0.tar.gz 的散列
算法 | 散列摘要 | |
---|---|---|
SHA256 | 1d405dda23fb3263b2385f5d8013e43995b7960222ba8841593161b331011c2a |
|
MD5 | 57229e77d5e503282416df9ea43cbf7a |
|
BLAKE2b-256 | dc4bfe3b545a293688ac38502a760b6eec98d8429aafeb0412050e0f2567b8a7 |