Archery icon indicating copy to clipboard operation
Archery copied to clipboard

升级到v1.11.3后ldap连接不上

Open calvin2020 opened this issue 9 months ago • 7 comments

重现步骤

我docker部署的archery,从v1.8.1升级到v1.11.3后,使用ldap账号登录不了archery

Image

以下是我的配置archery/settings.py关于ldap部分配置:

Image

/opt/Archery/src/docker-compose/.env我也配置了ldap

Image

预期外的结果

如上

日志文本


版本

1.11.3

部署方式

Docker

是否还有其他可以辅助定位问题的信息?比如数据库版本等

No response

calvin2020 avatar Mar 05 '25 03:03 calvin2020

建议上 master

LeoQuote avatar Mar 05 '25 03:03 LeoQuote

建议上 master

你好,我docker镜像还是用v1.11.3吗?

calvin2020 avatar Mar 05 '25 06:03 calvin2020

你好,上master了,还是登录不了ldap,ldap我验证了是没问题的,

Image

calvin2020 avatar Mar 05 '25 07:03 calvin2020

我本机执行这个命令ldapsearch -x -H ldaps://ldaps.xxx -D "cn=root,dc=xxx,dc=cn" -W -b "ou=xxx,dc=xxx,dc=cn" "(uid=xxx)"可以输出结果,但是登录到archery容器执行这条命令,报

Image 我在archery容器telnet我的ldap域名加端口是通的,请问下archery的基础镜像有什么需要修改的吗?

calvin2020 avatar Mar 05 '25 08:03 calvin2020

我在archery容器执行ldapsearch -x -H ldaps://ldaps.xxx -D "cn=root,dc=xxx,dc=cn" -W -b "ou=xxx,dc=xxx,dc=cn" "(uid=xxx),报错解决了,可以通了,但是archery平台登录ldap依然失败

Image

calvin2020 avatar Mar 05 '25 09:03 calvin2020

archery/settings.py 配置里的 ENABLE_LDAP = env("ENABLE_LDAP", False) 替换成 ENABLE_LDAP = True 试试

LDAP

ENABLE_LDAP = True #ENABLE_LDAP = env("ENABLE_LDAP", False) if ENABLE_LDAP: import ldap #from django_auth_ldap.config import LDAPSearch from django_auth_ldap.config import LDAPSearch, GroupOfNamesType

AUTHENTICATION_BACKENDS = (
    "django_auth_ldap.backend.LDAPBackend",  # 配置为先使用LDAP认证,如通过认证则不再使用后面的认证方式
    "django.contrib.auth.backends.ModelBackend",  # django系统中手动创建的用户也可使用,优先级靠后。注意这2行的顺序
)

yanfeng1 avatar Apr 16 '25 02:04 yanfeng1

我本机执行这个命令ldapsearch -x -H ldaps://ldaps.xxx -D "cn=root,dc=xxx,dc=cn" -W -b "ou=xxx,dc=xxx,dc=cn" "(uid=xxx)"可以输出结果,但是登录到archery容器执行这条命令,报

Image 我在archery容器telnet我的ldap域名加端口是通的,请问下archery的基础镜像有什么需要修改的吗?

要跳过证书,在docker-compose文件的archery里加 environment: - LDAPTLS_REQCERT=never

xuanzhi201111 avatar May 22 '25 08:05 xuanzhi201111