这些关于连接元数据库和 ldap 的步骤有什么问题?
What is wrong in these steps regarding to connecting metabase and ldap?
我无法在元数据库和 LDAP 之间创建连接。
我正在尝试将其设置为类似于我们的 Zeppelin 配置:
ldapRealm.contextFactory.url = our_url<br>
ldapRealm.contextFactory.systemUsername = our_username<br>
ldapRealm.contextFactory.systemPassword = our_password
ldapRealm.userDnTemplate = cn={0},ou=people,dc=xha,dc=app<br>
ldapRealm.memberAttributeValueTemplate = cn={0},ou=people,dc=xha,dc=app<br>
ldapRealm.authorizationEnabled = true<br>
ldapRealm.searchBase = dc=xha,dc=app<br>
ldapRealm.userSearchBase = ou=people,dc=xha,dc=app<br>
ldapRealm.groupSearchBase = ou=group,dc=xha,dc=app<br>
ldapRealm.userSearchAttributeName = uid<br>
ldapRealm.userSearchFilter = (&(objectclass=*)(uid={0}))<br>
ldapRealm.memberAttribute = memberUid
当我尝试类似的配置时:
URL、用户名、密码,效果很好。
我尝试将 “ou=people,dc=xha,dc=app”
用于 “USER SEARCH BASE”
,但它不起作用,我在日志中收到错误消息:
errors {:ldap-user-base "User search base does not exist or is
unreadable"}}
看来,“USER SEARCH BASE”
实际上是 “GROUP SEARCH BASE”
。
在 “USER SEARCH BASE”
中唯一有效的值是 “OU=group,DC=xha, DC=app”
我尝试了 “USER FILTER”:<br>
cn={login},ou=people,dc=xha,dc=app<br>
(&(objectClass=)(uid={0}))<br>
(&(objectClass=)(uid={login}))<br>
(&(objectClass=)(memberUid={0}))<br>
(&(objectClass=)(memberUid={login}))<br>
{uid={login}}<br>
(&(objectclass=*)(cn={login}))<br>
我也试过空过滤器。
还没有任何效果,我坚持了大约 2 周。
在日志中只是:
{:errors {:password “did not match stored password”}}
我也尝试了 https://discourse.metabase.com/t/ldap-debugging/2741 中的步骤,但我仍然无法正常工作。
我们的“LDAP”账户没有邮箱 -> https://discourse.metabase.com/t/autenticate-by-ldap-a-user-that-have-no-email/5215
我不知道这是否仍然是“硬编码”版本:0.34.2
那么,你有什么建议吗,我该如何解决?
提前致谢
彼得
其实我想通了。 "OU=people,DC=xha, DC=app" 是正确的,但我们的 LDAP 架构非常庞大,并且 LDAP 的日志中存在错误,即 "SIZE LIMIT EXCEEDED"。所以我们开始使用 MariaDB 来存储元数据库设置,我用 "OU=group,DC=xha, DC=app" 保存设置,然后手动更改为 OU=people,DC=xha, DC=appin MariaDB.
我无法在元数据库和 LDAP 之间创建连接。
我正在尝试将其设置为类似于我们的 Zeppelin 配置:
ldapRealm.contextFactory.url = our_url<br>
ldapRealm.contextFactory.systemUsername = our_username<br>
ldapRealm.contextFactory.systemPassword = our_password
ldapRealm.userDnTemplate = cn={0},ou=people,dc=xha,dc=app<br>
ldapRealm.memberAttributeValueTemplate = cn={0},ou=people,dc=xha,dc=app<br>
ldapRealm.authorizationEnabled = true<br>
ldapRealm.searchBase = dc=xha,dc=app<br>
ldapRealm.userSearchBase = ou=people,dc=xha,dc=app<br>
ldapRealm.groupSearchBase = ou=group,dc=xha,dc=app<br>
ldapRealm.userSearchAttributeName = uid<br>
ldapRealm.userSearchFilter = (&(objectclass=*)(uid={0}))<br>
ldapRealm.memberAttribute = memberUid
当我尝试类似的配置时: URL、用户名、密码,效果很好。
我尝试将 “ou=people,dc=xha,dc=app”
用于 “USER SEARCH BASE”
,但它不起作用,我在日志中收到错误消息:
errors {:ldap-user-base "User search base does not exist or is unreadable"}}
看来,“USER SEARCH BASE”
实际上是 “GROUP SEARCH BASE”
。
在 “USER SEARCH BASE”
中唯一有效的值是 “OU=group,DC=xha, DC=app”
我尝试了 “USER FILTER”:<br>
cn={login},ou=people,dc=xha,dc=app<br>
(&(objectClass=)(uid={0}))<br>
(&(objectClass=)(uid={login}))<br>
(&(objectClass=)(memberUid={0}))<br>
(&(objectClass=)(memberUid={login}))<br>
{uid={login}}<br>
(&(objectclass=*)(cn={login}))<br>
我也试过空过滤器。
还没有任何效果,我坚持了大约 2 周。 在日志中只是:
{:errors {:password “did not match stored password”}}
我也尝试了 https://discourse.metabase.com/t/ldap-debugging/2741 中的步骤,但我仍然无法正常工作。
我们的“LDAP”账户没有邮箱 -> https://discourse.metabase.com/t/autenticate-by-ldap-a-user-that-have-no-email/5215 我不知道这是否仍然是“硬编码”版本:0.34.2
那么,你有什么建议吗,我该如何解决?
提前致谢 彼得
其实我想通了。 "OU=people,DC=xha, DC=app" 是正确的,但我们的 LDAP 架构非常庞大,并且 LDAP 的日志中存在错误,即 "SIZE LIMIT EXCEEDED"。所以我们开始使用 MariaDB 来存储元数据库设置,我用 "OU=group,DC=xha, DC=app" 保存设置,然后手动更改为 OU=people,DC=xha, DC=appin MariaDB.