一、安装相关包 1、安装LDAP相关的扩展包 [root@localhost ~]# docker ps # docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 1bb1c633de94 mysql:5.7 "docker-entrypoint.s…" 3 weeks ago Up 3 weeks 3306/tcp, 33060/tcp, 0.0.0.0:3307->3307/tcp, :::3307->3307/tcp mysql 10a1a24b437a redis:5 "docker-entrypoint.s…" 3 weeks ago Up 3 weeks 6379/tcp redis 75054a146810 hhyo/inception "/bin/sh -c 'nohup /…" 3 weeks ago Up 3 weeks 6669/tcp inception 87cfaee82763 hhyo/archery:1.8.0 "dockerize -wait tcp…" 3 weeks ago Up 7 minutes 0.0.0.0:9123->9123/tcp, :::9123->9123/tcp archery 02b26516ccea hanchuanchuan/goinception "/usr/local/bin/dumb…" 3 weeks ago Up 3 weeks 4000-4001/tcp goinception [root@localhost ~]# docker exec -it 87 bash [root@c3fe74f742ac archery]# yum -y install openldap-devel 2、安装PYTHON依赖库 # 缺少的话在浏览器登陆时会报错:"500 Internal Server Error" [root@c3fe74f742ac archery]# source /opt/venv4archery/bin/activate [root@c3fe74f742ac archery]# pip install django-auth-ldap==1.3.0 -i --trusted-host pypi.douban.com --upgrade pip [root@c3fe74f742ac archery]# pip install six [root@c3fe74f742ac archery]# cd /opt/venv4archery/lib/python3.8/site-packages/ [root@c3fe74f742ac archery]# cp six.py /opt/venv4archery/lib/python3.8/site-packages/django/utils/ 3、重启下相关容器 [root@localhost ~]# docker restart 87 [root@localhost ~]# docker ps | grep archery 87cfaee82763 hhyo/archery:1.8.0 "dockerize -wait tcp…" 3 weeks ago Up 9 minutes 0.0.0.0:9123->9123/tcp, :::9123->9123/tcp archery 二、编辑配置文件 1、进入相关容器修改配置文件 [root@localhost ~]# docker exec -it 87 bash [root@87cfaee82763 archery]# yum -y install vim [root@87cfaee82763 archery]# cd /opt/archery/archery [root@87cfaee82763 archery]# ls asgi.py __init__.py __pycache__ settings.py settings.py.bak urls.py wsgi.py [root@c3fe74f742ac archery]# cp settings.py settings.py.bak [root@c3fe74f742ac archery]# vim settings.py ( 修改 LDAP 相关的部分如下内容 ) # LDAP #ENABLE_LDAP = False ENABLE_LDAP = True if ENABLE_LDAP: import ldap from django_auth_ldap.config import LDAPSearch AUTHENTICATION_BACKENDS = ( 'django_auth_ldap.backend.LDAPBackend', # 配置为先使用LDAP认证,如通过认证则不再使用后面的认证方式 'django.contrib.auth.backends.ModelBackend', # django系统中手动创建的用户也可使用,优先级靠后。注意这2行的顺序 ) AUTH_LDAP_SERVER_URI = "ldap://192.168.1.1" AUTH_LDAP_BIND_DN = "cn=admin,dc=xxxxx,dc=cn" AUTH_LDAP_BIND_PASSWORD = "xxxxxxx" AUTH_LDAP_USER_SEARCH = LDAPSearch('ou=user,dc=xxxxxx,dc=cn',ldap.SCOPE_SUBTREE,'(uid=%(user)s)',) AUTH_LDAP_ALWAYS_UPDATE_USER = True # 每次登录从ldap同步用户信息 AUTH_LDAP_USER_ATTR_MAP = { # key为archery.sql_users字段名,value为ldap中字段名,用户同步信息 "username": "cn", "display": "displayname", "email": "mail" } 2、重启下相关容器 [root@localhost ~]# docker restart 87 [root@localhost ~]# docker ps | grep archery 87cfaee82763 hhyo/archery:1.8.0 "dockerize -wait tcp…" 3 weeks ago Up 13 minutes 0.0.0.0:9123->9123/tcp, :::9123->9123/tcp archery 3.查看docker logs日志: # docker logs archery -f --tail=50 [2022-05-12 16:39:20 +0800] [39] [INFO] Started server process [39] [2022-05-12 16:39:20 +0800] [39] [INFO] Waiting for application startup. [2022-05-12 16:39:20 +0800] [39] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:39:20 +0800] [39] [INFO] Application startup complete. [2022-05-12 16:39:20 +0800] [40] [INFO] Started server process [40] [2022-05-12 16:39:20 +0800] [40] [INFO] Waiting for application startup. [2022-05-12 16:39:20 +0800] [40] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:39:20 +0800] [40] [INFO] Application startup complete. [2022-05-12 16:39:20 +0800] [41] [INFO] Started server process [41] [2022-05-12 16:39:20 +0800] [41] [INFO] Waiting for application startup. [2022-05-12 16:39:20 +0800] [41] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:39:20 +0800] [41] [INFO] Application startup complete. [2022-05-12 16:39:47,540][ThreadPoolExecutor-0_0:140568935855872][task_id:django_auth_ldap][backend.py:657][WARNING]- cn=zhangyu,ou=user,dc=ienglish,dc=cn does not have a value for the attribute displayname [2022-05-12 16:40:36,595][ThreadPoolExecutor-0_0:140568935855872][task_id:django_auth_ldap][backend.py:657][WARNING]- cn=zhaoyanchang,ou=user,dc=ienglish,dc=cn does not have a value for the attribute displayname [2022-05-12 16:40:56,469][ThreadPoolExecutor-0_0:140568935855872][task_id:django_auth_ldap][backend.py:657][WARNING]- cn=zhangyu,ou=user,dc=ienglish,dc=cn does not have a value for the attribute displayname 2022/05/12 16:55:32 Received signal: terminated 2022/05/12 16:55:32 Command exited with error: signal: terminated 2022/05/12 16:55:33 Waiting for: tcp://mysql:3306 2022/05/12 16:55:33 Waiting for: tcp://redis:6379 2022/05/12 16:55:33 Connected to tcp://redis:6379 2022/05/12 16:55:33 Connected to tcp://mysql:3306 切换python运行环境 修改重定向端口 启动nginx 收集所有的静态文件到STATIC_ROOT 启动Django Q cluster 启动服务 [2022-05-12 16:55:35 +0800] [38] [INFO] Starting gunicorn 20.0.4 [2022-05-12 16:55:35 +0800] [38] [INFO] Listening at: (38) [2022-05-12 16:55:35 +0800] [38] [INFO] Using worker: uvicorn.workers.UvicornWorker [2022-05-12 16:55:35 +0800] [40] [INFO] Booting worker with pid: 40 [2022-05-12 16:55:35 +0800] [41] [INFO] Booting worker with pid: 41 [2022-05-12 16:55:35 +0800] [42] [INFO] Booting worker with pid: 42 [2022-05-12 16:55:35 +0800] [43] [INFO] Booting worker with pid: 43 [2022-05-12 16:55:35 +0800] [40] [INFO] Started server process [40] [2022-05-12 16:55:35 +0800] [40] [INFO] Waiting for application startup. [2022-05-12 16:55:35 +0800] [40] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:55:35 +0800] [40] [INFO] Application startup complete. [2022-05-12 16:55:35 +0800] [41] [INFO] Started server process [41] [2022-05-12 16:55:35 +0800] [41] [INFO] Waiting for application startup. [2022-05-12 16:55:35 +0800] [41] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:55:35 +0800] [41] [INFO] Application startup complete. [2022-05-12 16:55:35 +0800] [42] [INFO] Started server process [42] [2022-05-12 16:55:35 +0800] [42] [INFO] Waiting for application startup. [2022-05-12 16:55:35 +0800] [42] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:55:35 +0800] [42] [INFO] Application startup complete. [2022-05-12 16:55:35 +0800] [43] [INFO] Started server process [43] [2022-05-12 16:55:35 +0800] [43] [INFO] Waiting for application startup. [2022-05-12 16:55:35 +0800] [43] [INFO] ASGI 'lifespan' protocol appears unsupported. [2022-05-12 16:55:35 +0800] [43] [INFO] Application startup complete. 4.用ldap账号登录页面进行测试。
SQL审核平台 Archery v1.8.0 LDAP功能配置步骤
来源:这里教程网
时间:2026-03-01 16:37:45
作者:
编辑推荐:
- SQL审核平台 Archery v1.8.0 LDAP功能配置步骤03-01
- 模糊查询区分大小写吗?03-01
- windows系统vscode远程调试MySQL03-01
- SQL书写规范(通用)03-01
- MySQL性能优化的5个维度03-01
- MySQL 配置InnoDB的内存分配器03-01
- MySQL 配置InnoDB变更缓冲03-01
- MySQL 配置InnoDB的并发线程03-01
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 模糊查询区分大小写吗?
模糊查询区分大小写吗?
26-03-01 - windows系统vscode远程调试MySQL
windows系统vscode远程调试MySQL
26-03-01 - SQL书写规范(通用)
SQL书写规范(通用)
26-03-01 - MySQL性能优化的5个维度
MySQL性能优化的5个维度
26-03-01 - 基于LINUX的MySql二进制本地升级实施文档
基于LINUX的MySql二进制本地升级实施文档
26-03-01 - MySQL 8.0新特性-并行查询innodb_parallel_read_threads
- 分析SQL给出索引优化建议的工具(美团开源)
分析SQL给出索引优化建议的工具(美团开源)
26-03-01 - 《MySQL 8从入门到精通(视频教学版)》简介
《MySQL 8从入门到精通(视频教学版)》简介
26-03-01 - 【北亚数据库数据恢复】使用delete未加where子句删除全表数据的Mysql数据库数据恢复
- 如何远程管理天翼云RDS数据库
如何远程管理天翼云RDS数据库
26-03-01
