微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法使用Apache-Superset应用程序一次连接两个LDAP服务器

如何解决无法使用Apache-Superset应用程序一次连接两个LDAP服务器

我正在尝试为超级集配置多个ldap服务器,但是目前,我只能为一台服务器设置。

任何解决方法都可以在“ Config.py”中完成,以同时配置多台服务器?

我在“ config.py”文件中进行了以下配置。

config.py-LDAP配置

AUTH_TYPE = AUTH_LDAP    
AUTH_USER_REGISTRATION = True
AUTH_USER_REGISTRATION_ROLE = "Alpha"

AUTH_LDAP_SERVER = "ldap://ldap_example_server_one:389"
AUTH_LDAP_USE_TLS = False
AUTH_LDAP_BIND_USER = "CN=my_user,OU=my_users,DC=my,DC=domain"
AUTH_LDAP_BIND_PASSWORD = "mypassword"
AUTH_LDAP_SEARCH = "DC=my,DC=domain"
AUTH_LDAP_UID_FIELD = "sAMAccountName"

注意–它适用于“ ldap_example_server_one:389”服务器,但是当尝试添加其他服务器时,抛出配置失败错误

解决方法

您不能将多个 LDAP 服务器与 Flask Appbuilder 的默认 LDAP 身份验证器一起使用。您必须实现您自己的自定义安全管理器,以便您可以根据需要操作任意数量的 LDAP 服务器。

首先,您应该创建新文件,例如my_security_manager.py。将这些行放入其中:

from superset.security import SupersetSecurityManager


class MySecurityManager(SupersetSecurityManager):
    
    def __init__(self,appbuilder):
        super(MySecurityManager,self).__init__(appbuilder)

其次,您应该让 Superset 知道您想使用全新的安全管理器。为此,请将这些行添加到您的 Superset 配置文件 (superset_config.py) 中:

from my_security_manager import MySecurityManager
CUSTOM_SECURITY_MANAGER = MySecurityManager

这是额外的 information on the topic

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。