Active Directory / LDAP 设置

本页面说明通过 Active Directory 或 LDAP 服务启用外部身份管理所需的设置。 有关使用这些设置的教程,请参见 配置 MinIO 使用 Active Directory / LDAP 进行认证

identity_ldap 配置设置仍可用于现有脚本和其他工具。

你可以通过以下方式建立或修改设置:

  • 在启动或重启 MinIO Server 之前,在宿主机系统上定义 环境变量。 如何定义环境变量,请参考所用操作系统的文档。
  • 使用 mc admin config set 定义 配置项

如果同时定义了环境变量和对应的配置项,MinIO 使用环境变量的值。

有些设置只有环境变量或配置项中的一种,而不是两者同时存在。

示例

MINIO_IDENTITY_LDAP_SERVER_ADDR="ldapserver.com:636"

identity_ldap

mc-conf

使用 mc admin config set 定义 LDAP 时,以下设置为必需项:

  • enabled
  • server_addr
  • lookup_bind_dn
  • lookup_bind_dn_password
  • user_dn_search_base_dn
  • user_dn_search_filter
mc admin config set identity_ldap                        \
   enabled="true"                                        \
   server_addr="ad-ldap.example.net/"                    \
   lookup_bind_dn="cn=miniolookupuser,dc=example,dc=net" \
   lookup_bind_dn_password="userpassword"                \
   user_dn_search_base_dn="dc=example,dc=net"            \
   user_dn_search_filter="(&(objectCategory=user)(sAMAccountName=%s))"

设置

服务器地址

必需

MINIO_IDENTITY_LDAP_SERVER_ADDR

envvar

指定 Active Directory / LDAP server 的主机名。例如:

ldapserver.com:636
identity_ldap server_addr

mc-conf

指定 Active Directory / LDAP server 的主机名。例如:

ldapserver.com:636

Lookup Bind DN

必需

MINIO_IDENTITY_LDAP_LOOKUP_BIND_DN

envvar

identity_ldap lookup_bind_dn

mc-conf

指定 MinIO 在查询 AD/LDAP server 时所使用的 AD/LDAP 账户 Distinguished Name (DN)。 这会启用对 AD/LDAP server 的 Lookup-Bind 认证。

该 DN 账户应为只读访问账号,并具备足够权限以支持执行用户和组查询。

Lookup Bind 密码

必需

MINIO_IDENTITY_LDAP_LOOKUP_BIND_PASSWORD

envvar

identity_ldap lookup_bind_password

mc-conf

指定 Lookup-Bind 用户账户的密码。

用户 DN 搜索基准 DN

必需

MINIO_IDENTITY_LDAP_USER_DN_SEARCH_BASE_DN

envvar

identity_ldap user_dn_search_base_dn

mc-conf

指定 MinIO 在查询与认证客户端所提供凭证相匹配的用户凭证时所使用的基础 Distinguished Name (DN)。

多个 DN 之间请使用分号(;)分隔。

例如:

cn=miniousers,dc=myldapserver,dc=net;ou=swengg,dc=min,dc=io

支持 Lookup-Bind 模式。

用户 DN 搜索过滤器

必需

MINIO_IDENTITY_LDAP_USER_DN_SEARCH_FILTER

envvar

identity_ldap user_dn_search_filter

mc-conf

指定 MinIO 在查询与认证客户端所提供凭证相匹配的用户凭证时所使用的 AD/LDAP 搜索过滤器。

使用 %s 替换字符将客户端指定的用户名插入搜索字符串。例如:

(userPrincipalName=%s)

用户 DN 属性

可选

MINIO_IDENTITY_LDAP_USER_DN_ATTRIBUTES

envvar

identity_ldap user_dn_attributes

mc-conf

用户 DN 属性的逗号分隔列表。

一些有效值包括 uid,cn,mail,sshPublicKey

如果要为 LDAP 用户启用公钥认证,请将 sshPublicKey 作为 DN 属性传入。 随后,用户即可使用传入的 SSH Public Key 登录 SFTP server。

mc idp ldap update ALIAS user_dn_attributes=sshPublicKey

启用

可选

此设置没有环境变量选项。 请改用配置设置。

identity_ldap enabled

mc-conf

将其设置为 false 可禁用 AD/LDAP 配置。

若为 false,应用程序将无法生成 STS 凭证,也无法通过已配置的提供者向 MinIO 进行身份验证。

默认为 true(即 “enabled”)。

组搜索过滤器

可选

MINIO_IDENTITY_LDAP_GROUP_SEARCH_FILTER

envvar

identity_ldap group_search_filter

mc-conf

指定用于为已认证用户执行组查询的 AD/LDAP 搜索过滤器。

使用 %s 替换字符将客户端指定的用户名插入搜索字符串。 使用 %d 替换字符将客户端指定用户名对应的 Distinguished Name 插入搜索字符串。

例如:

(&(objectclass=groupOfNames)(memberUid=%s))

在提供 AD/LDAP 组搜索过滤器时,应将其配置为仅返回支持认证所需的最少相关组。 返回大量组成员关系的过滤器会增加相关调用和资源的体量。 对大请求体或大响应体敏感的功能可能因此出现意外行为。

在提供 AD/LDAP 组搜索过滤器时,应配置一个仅返回满足身份验证需求的最小相关组集合的过滤器。 返回大量组分配信息的过滤器会增加相关调用和资源消耗。 对大体积请求或响应体敏感的功能可能因此出现非预期行为。

组搜索基准 DN

可选

MINIO_IDENTITY_LDAP_GROUP_SEARCH_BASE_DN

envvar

identity_ldap group_search_base_dn

mc-conf

指定 MinIO 在执行组查询时所使用的组搜索基础 Distinguished Names 列表,多个值之间使用分号(;)分隔。

例如:

cn=miniogroups,dc=myldapserver,dc=net;ou=swengg,dc=min,dc=io

TLS 跳过校验

可选

MINIO_IDENTITY_LDAP_TLS_SKIP_VERIFY

envvar

identity_ldap tls_skip_verify

mc-conf

指定 on 可在不验证的情况下信任 AD/LDAP server 的 TLS 证书。 如果 AD/LDAP server 的 TLS 证书由不受信任的证书颁发机构签名 (例如自签名),则可能需要此选项。

默认值为 off

服务器不安全模式

可选

MINIO_IDENTITY_LDAP_SERVER_INSECURE

envvar

identity_ldap server_insecure

mc-conf

指定 on 可允许与 AD/LDAP server 建立未加密的连接(非 TLS)。

MinIO 会以明文形式将 AD/LDAP 用户凭证发送到 AD/LDAP server,因此 必须 启用 TLS,才能防止凭证在传输过程中被读取。 启用此选项会带来安全风险,因为任何能够访问网络流量的用户都可能看到未加密的明文 凭证。

默认值为 off

服务器 Start TLS

可选

MINIO_IDENTITY_LDAP_SERVER_STARTTLS

envvar

identity_ldap server_starttls

mc-conf

指定 on 可启用到 AD/LDAP server 的 StartTLS 连接。

默认值为 off

有关 StartTLS 的更多信息,请参见 LDAP RFC 4511 specification 第 4.14 节。

SRV 记录名称

可选

MINIO_IDENTITY_LDAP_SRV_RECORD_NAME

envvar

identity_ldap srv_record_name

mc-conf

指定适当的值,以允许 MinIO 通过 DNS SRV record 请求选择 AD/LDAP server。

启用后,MinIO 会通过以下方式选择 AD/LDAP server:

  • 按标准命名约定构造目标 SRV 记录名称。
  • 请求可用的 AD/LDAP server 列表。
  • 根据优先级和权重选择合适的目标。

下面的配置示例假定 AD/LDAP server 地址设为 example.com,SRV 记录协议为 _tcp

对于以 _ldap 开头的 SRV 记录名称,指定 ldap。 构造出的 DNS SRV 记录名称类似如下:

_ldap._tcp.example.com

对于以 _ldaps 开头的 SRV 记录名称,指定 ldaps。 构造出的 DNS SRV 记录名称类似如下:

_ldaps._tcp.example.com

如果你的 DNS SRV 记录名称使用了其他 service 或 protocol 名称,请指定 on, 并将完整记录名称作为 LDAP server 地址提供。 例如:_ldapserver._specialtcp.example.com

有关 DNS SRV 记录的更多信息,请参见 DNS SRV Records for LDAP

备注

可选

MINIO_IDENTITY_LDAP_COMMENT

envvar

identity_ldap identity_ldap comment

mc-conf

指定要附加到 AD/LDAP 配置上的注释。

最后修改 August 2, 2026: init commit (8338d5b)

本页部分内容改编自 MinIO 对象存储文档,© 2020–至今 MinIO, Inc.,依据 CC BY 4.0 授权,由 Silo 项目转换与维护。归属与署名

本页为非官方中文翻译。如与英文原文有出入,以英文原文为准。