跳转到主要内容

udata的LDAP认证,可选Kerberos支持。

项目描述

udata-ldap

udata的LDAP认证,可选Kerberos支持。

需求

要使用仅LDAP认证,您只需要udata-ldap扩展。

要使用SASLSPNEGO,您需要一个功能性的Kerberos客户端环境。

在debian上,您可以使用以下命令安装需求

apt-get install krb5-config krb5-user libkrb5-dev

您需要在/etc/krb5.conf中配置您的域名。以下是针对DOMAIN.ORG的示例配置

[libdefaults]
    default_realm = DOMAIN.ORG

[realms]
    DATA.XPS = {
        #admin_server = ipa.data.xps
        # use "kdc = ..." if realm admins haven't put SRV records into DNS
        kdc = kdc.domain.org
        admin_server = kdc.domain.org:749
        default_domain = domain.org
        dns_lookup_realm = false
        dns_lookup_kdc = false
        rdns = false
    }

[domain_realm]
    domain.org = DOMAIN.ORG
    .domain.org = DOMAIN.ORG

使用方法

在您的udata环境中安装插件包

pip install udata-ldap

然后在您的udata.cfg中激活它

PLUGINS = ['ldap']

注意:如果您使用Kerberos SASL和/或SPNEGO,请使用以下命令安装它

pip install udata-ldap[kerberos]

配置

udata-ldap使用flask-ldap3-login,因此使用以下链接中描述的相同参数此处.

一些额外的参数可用

参数 默认值 备注
LDAP_DEBUG False 启用详细的/调试日志记录
LDAP_KERBEROS_KEYTAB None 此服务的可选Kerberos密钥表路径
LDAP_KERBEROS_SERVICE_NAME 'HTTP' 在密钥表中配置的服务主体
LDAP_KERBEROS_SERVICE_HOSTNAME socket.getfqdn() 服务主机名(例如,data.domain.com
LDAP_KERBEROS_SPNEGO False 是否启用SPNEGO的无密码身份验证
LDAP_KERBEROS_SPNEGO_NO_REALM True 自动从SPNEGO/REMOTE_USER标识符中移除@REALM
LDAP_REMOTE_USER_ATTR 'uid' 从SPNEGO握手中提取的ldap属性以匹配用户
LDAP_USER_FIRST_NAME_ATTR 'givenName' 从中提取名字的ldap属性
LDAP_USER_LAST_NAME_ATTR 'sn' 从中提取姓氏的ldap属性

测试配置

udata-ldap提供两个命令来帮助配置

  • udata ldap config将显示udata看到的LDAP配置
  • udata ldap check将允许您快速测试您的LDAP配置。
  • udata ldap krbcheck将允许您快速测试您的Kerberos配置。

使用Docker本地测试

提供了一个示例docker-compose.yml,用于使用freeipa服务器进行本地测试。

要使用它,您需要将文件ipa-server-install-options.example复制到ipa-server-install-options,并使用自己的参数进行编辑。

--unattended
--realm=DOMAIN.ORG
--domain=DOMAIN.ORG
--ds-password=password
--admin-password=password

变更日志

0.3.5 (2018-11-23)

  • 修复打包

0.3.4 (2018-11-23)

  • 修复协商和REMOTE_USER电子邮件提取
  • 修复一些命令行编码错误

0.3.3 (2018-11-09)

  • 内部:将所有Kerberos处理提取到其自己的模块中
  • Kerberos:处理从SPNEGO/REMOTE_USER标识符中移除REALM

0.3.2 (2018-10-16)

  • 修复一些控制台编码错误
  • 修复LDAP值提取
  • 使所有映射到用户配置文件的LDAP属性可配置

0.3.1 (2018-10-11)

  • LDAP_USER_SPNEGO_ATTR重命名为LDAP_REMOTE_USER_ATTR以保持一致性
  • 修复使用SPNEGO属性进行登录的登录表单

0.3.0 (2018-10-09)

  • 在登录表单上显示错误
  • 强制将电子邮件放入登录表单
  • 修复ldap命令中的编码错误
  • 登录时更新用户
  • 开始处理协商视图中的错误
  • 当尝试无凭据自动登录时显示页面
  • 添加翻译

0.2.1 (2018-10-08)

  • 修复“自动登录”链接
  • 更多日志记录

0.2.0

  • 更多测试
  • 除非LDAP_DEBUG = True,否则隐藏调试日志
  • 删除有问题的默认LDAP_*设置

0.1.0

初始版本

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解更多关于安装软件包的信息。

源分发

本次发布没有提供源分布文件。请参阅有关生成分发归档的教程。

构建的分发

udata_ldap-0.3.5-py2.py3-none-any.whl (14.2 kB 查看散列值)

上传时间: Python 2 Python 3

由以下提供支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面