0

我正在尝试使用多个 ldap 服务器配置 Superset,但此时,我只能设置一个服务器。

任何解决方法都可以在“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”服务器,但是当尝试添加另一台服务器时,它会引发配置失败错误。

4

1 回答 1

0

您不能将多个 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

这是有关该主题的其他信息

于 2021-05-03T17:00:36.093 回答