superset配置ldap这块调试了好久,一直不能配置通,各种查,网上一些教程都是针对服务器端是openldap的设置,我这边ldap服务器是微软的MSFT AD,最后也是结合网上的信息各种尝试,终于调试通了,特此单独记录一下,帮助需要的朋友。
可以先使用ldapsearch命令,看看是否可以与ldap服务器端访问通,通了之后在对superset配置文件操作,避免调试了半天是因为与ldap服务器端网络不通。
superset安装篇:
Linux下安装Superset实践
1、安装LDAP依赖
pip install Flask-LDAP
2、修改配置(superset/config.py)
vi ~/anaconda3/envs/super/lib/python3.6/site-packages/superset/config.py
注释掉
#AUTH_TYPE = AUTH_DB
#写入
from flask_appbuilder.security.manager import AUTH_DB,AUTH_LDAP
AUTH_TYPE = AUTH_LDAP
AUTH_USER_REGISTRATION_ROLE = "Admin" (用户登陆superset后获得的权限)
AUTH_USER_REGISTRATION = True
AUTH_LDAP_SERVER = "ldap://ip:端口" (填写自己的IP和端口)
AUTH_LDAP_SEARCH = "OU=Accounts,DC=do,DC=cn" (填写自己信息)
#AUTH_LDAP_APPEND_DOMAIN = "do.cn" (如果开启,登录时不加@邮箱)
#AUTH_LDAP_EMAIL_FIELD = "mail"
AUTH_LDAP_EMAIL_FIELD = "userPrincipalName" (使用登录的用户名 作为邮箱)
AUTH_LDAP_UID_FIELD="userPrincipalName"
AUTH_LDAP_FIRSTNAME_FIELD="givenName"
AUTH_LDAP_LASTTNAME_FIELD="sn"
AUTH_LDAP_USE_TLS = False
3、重启superset服务
注:登陆时用户名使用@前面的用户登陆,当然每个人的环境不同,可以多试试(重要)
ldap配置参考:
https://ranying666.github.io/2019/06/06/superset-ldap/
https://qianmoq.com/shujuzhongtai/supersetshizhanzhipeizhildapshouquan.html
https://blog.csdn.net/lwl_0701/article/details/82853925
https://www.cnblogs.com/likanmama/p/superset.html
官网https://flask-appbuilder.readthedocs.io/en/latest/security.html#authentication-ldap
Ldap日常命令ldapsearch
https://blog.csdn.net/aliaichidantong/article/details/80015605
https://blog.csdn.net/liumiaocn/article/details/83990918