MySQL Workbench 手册  /  ...  /  LDAP 和 Kerberos 连接方法

5.3.4 LDAP 和 Kerberos 连接方法

MySQL 企业版支持允许 MySQL 服务器使用 LDAP(轻量级目录访问协议)、LDAP 和 Kerberos 或原生 Kerberos 对 MySQL 用户进行身份验证的身份验证方法。MySQL Workbench 8.0.27(及更高版本)提供了几种连接方法,允许您使用 LDAP 和 Kerberos 身份验证。

注意

服务器端 LDAP 和 Kerberos 身份验证插件仅包含在 MySQL 企业版中。MySQL 社区发行版中未包含这些服务器端插件。客户端插件包含在所有 MySQL Workbench 发行版中,包括社区发行版。这允许来自任何 MySQL Workbench 发行版的用户连接到已加载服务器端插件的服务器。

尽管 MySQL Workbench 在所有发行版中都包含客户端插件,但对 LDAP 和 Kerberos 身份验证的特定支持取决于平台。例如,当 MySQL Workbench 在 macOS 上运行时,不支持身份验证。

注意

此 Kerberos 身份验证实现不支持任何平台上的 MIT Kerberos。

下表显示了每种连接方法的平台支持。

表 5.1 连接方法和支持的平台

连接方法 Windows Linux macOS
LDAP 用户名/密码 支持 支持 不支持
LDAP Sasl/Kerberos 不支持 支持 不支持
原生 Kerberos 支持 支持 不支持

通常,要使用 LDAP 或 Kerberos 可插拔身份验证,必须满足以下要求

  • 服务器端和客户端插件需要兼容,并且必须安装服务器端插件。为了最大程度地减少不兼容的可能性,请及时定期升级服务器和 MySQL Workbench。

  • 必须为正在使用的身份验证协议类型配置 MySQL 企业版。适用于每种身份验证方法的特定库、服务和服务器必须可供 MySQL 服务器使用。

    注意

    MySQL Workbench 将基于 SASL 的 LDAP 身份验证的使用限制为使用通用安全服务应用程序编程接口 (GSSAPI)/Kerberos 身份验证方法的配置。不支持在 LDAP 协议中专门使用 SASL 消息来安全传输凭据。

  • 必须使用指定帐户如何进行身份验证的语法创建或修改 MySQL 用户帐户。例如,要使用简单 LDAP 身份验证(以及LDAP 用户名/密码连接方法)为skylar创建帐户,请使用类似于以下内容的语法形式

    CREATE USER 'skylar'@'localhost' 
      IDENTIFIED WITH authentication_ldap_simple 
      [BY 'LDAP user DN'];

    此示例中的BY子句指示 MySQL 帐户针对哪个 LDAP 条目进行身份验证。可分辨名称 (DN) 的特定属性可能会因 LDAP 服务器而异。

要从 MySQL Workbench 设置客户端连接,请执行以下操作

  1. 单击主屏幕上的管理连接图标 () 以打开“管理服务器连接”对话框。

  2. 连接选项卡中,从列表中选择LDAP 用户名/密码LDAP Sasl/Kerberos原生 Kerberos连接方法。

    图 5.16 管理服务器连接 - LDAP 和 Kerberos 身份验证

    Content is described in the surrounding text.

满足服务器要求后,您可以从 MySQL Workbench 配置命名连接的参数。第 5.3.4.1 节“LDAP 用户名/密码”第 5.3.4.2 节“LDAP Sasl/Kerberos”第 5.3.4.3 节“原生 Kerberos”部分介绍了每种连接方法的设置。