LDAP

Metabase可以使用LDAP进行身份验证。 这篇文章 解释了如何设置,以下指南将帮助您在出现问题时进行故障排除。如果您的問題不是特定於LDAP,請前往 我們的登錄故障排除指南

LDAP样例配置

您可以使用以下 docker-compose 定义来测试Metabase与LDAP

version: "3.7"
services:
  metabase-ldap:
    image: metabase/metabase:latest
    container_name: metabase-ldap
    hostname: metabase-ldap
    volumes:
      - /dev/urandom:/dev/random:ro
    ports:
      - 3000:3000
    networks:
      - metanet1
    environment:
      - "MB_LDAP_BIND_DN=cn=admin,dc=example,dc=org"
      - "MB_LDAP_ENABLED=true"
      - "MB_LDAP_GROUP_BASE=cn=readers"
      - "MB_LDAP_HOST=openldap"
      - "MB_LDAP_PASSWORD=adminpassword"
      - "MB_LDAP_PORT=1389"
      - "MB_LDAP_USER_BASE=ou=users,dc=example,dc=org"
      - "MB_LDAP_ATTRIBUTE_EMAIL=uid"
      # We are using the same field for email and first name, just for this example to work without modifications to the LDAP objects
      - "MB_LDAP_ATTRIBUTE_FIRSTNAME=uid"
      - "MB_LDAP_ATTRIBUTE_LASTNAME=sn"
  openldap:
    image: bitnami/openldap:2.4.57
    hostname: openldap
    container_name: openldap
    ports:
      - 1389:1389
    environment:
      - LDAP_ADMIN_USERNAME=admin
      - LDAP_ADMIN_PASSWORD=adminpassword
      - [email protected],[email protected]
      - LDAP_PASSWORDS=password1!,password2!
      - LDAP_PORT_NUMBER=1389
      - LDAP_ROOT=dc=example,dc=org
      - LDAP_USER_DC=users
      - LDAP_GROUP=readers
    networks:
      - metanet1
networks:
  metanet1:
    driver: bridge

如果您没有将环境变量传递给Metabase,并且您想手动配置环境,您可以去管理面板,选择“设置”,选择“身份验证”,然后选择“LDAP配置”并输入以下值

  • USERNAME OR DN: cn=admin,dc=example,dc=org
  • PASSWORD: adminpassword
  • USER SEARCH BASE: ou=users,dc=example,dc=org
  • USER FILTER: (&(objectClass=inetOrgPerson)(|(uid={login})))
  • GROUP SEARCH BASE: cn=readers

对于 USER FILTER,您可以保留默认值,这将同时在 uidemail 字段中查找用户ID。

如果您遇到问题,请检查您是否可以登录到您的LDAP目录并使用类似 Apache Directory Studio 的软件执行查询。它将让您看到整个LDAP树,并查看您的LDAP应用程序的日志以查看运行的查询。

当前限制

  • 当使用具有MySQL数据库和启用LDAP的Metabase Enterprise时,请确保您使用环境变量 MB_LDAP_SYNC_USER_ATTRIBUTES_BLACKLIST 禁用从LDAP目录同步二进制字段。如果不这样做,您可能会遇到MySQL文本字段60K字段大小限制,这将阻止您创建用户或这些用户登录。

您是否仍然被困住了?

如果您无法使用故障排除指南解决问题

阅读其他 Metabase版本 的文档。

想要改进这些文档? 提出更改。