Linux 上的 SQL Server 的 Active Directory 身份验证

适用于:SQL Server - Linux

本文概述了 Linux 上的 SQL Server 的 Active Directory 身份验证。 Active Directory 身份验证在 SQL Server 中也称为集成身份验证。

Active Directory 身份验证概述

通过 Active Directory 身份验证,Windows 或 Linux 上的加入域的客户端能够使用其域凭据和 Kerberos 协议向 SQL Server 进行身份验证。

与 SQL Server 身份验证相比,Active Directory 身份验证具有以下优势:

  • 用户通过单一登录进行身份验证,不会收到密码输入提示。
  • 通过为 Active Directory 组创建登录名,你可以使用 Active Directory 组成员身份管理 SQL Server 中的访问和权限。
  • 每个用户在你的组织中都有单个标识,因此你无需跟踪哪些 SQL Server 登录名对应哪些人员。
  • Active Directory 使你能够在整个组织中强制实施集中式密码策略。

配置步骤

要使用 Active Directory 身份验证,你的网络上必须有一个 Active Directory 域控制器 (Windows)。

有关如何配置 Active Directory 身份验证的详细信息,请参阅教程:对 Linux 上的 SQL Server 使用 Active Directory 身份验证。 以下列表提供了一个摘要,其中包含指向教程中每个部分的链接:

  1. 将 SQL Server 主机加入 Active Directory 域
  2. 为 SQL Server 创建 Active Directory 用户并设置服务主体名称
  3. 配置 SQL Server 服务 keytab
  4. 保护 keytab 文件
  5. 将 SQL Server 配置为使用 keytab 文件进行 Kerberos 身份验证
  6. 在 Transact-SQL 中创建基于 Active Directory 的 SQL Server 登录名
  7. 通过 Active Directory 身份验证连接到 SQL Server

已知问题

  • 目前,数据库镜像终结点支持的唯一身份验证方法是 CERTIFICATE。 将来的版本中将启用 WINDOWS 身份验证方法。
  • Linux 上的 SQL Server 不支持使用 NTLM 协议进行远程连接。 可能使用 NTLM 进行本地连接。