将自托管式 Active Directory 用于 Amazon RDS for SQL Server 数据库实例
无论您的 AD 托管在企业数据中心、AWS EC2 上还是其他云提供商处,您都可以将 RDS for SQL Server 数据库实例直接加入到您的自托管式 Active Directory(AD)域。借助自托管式 AD,您可以使用 NTLM 身份验证直接控制 RDS for SQL Server 数据库实例上的用户和服务的身份验证,而无需使用中间域和林信任。当用户在加入您自托管式 AD 域的 RDS for SQL Server 数据库实例上进行身份验证时,身份验证请求将会转发到您指定的自托管式 AD 域中。
主题
区域和版本可用性
Amazon RDS 在所有 AWS 区域都支持通过自托管式 AD 使用 NTLM 控制 SQL Server 的身份验证。
限制
以下限制适用于面向 SQL Server 的自托管式 AD。
-
NTLM 是唯一支持的身份验证类型。不支持 Kerberos 身份验证。如果您需要使用 kerberos 身份验证,则可以使用 AWS Managed AD,而不是自托管式 AD。
-
不支持 Microsoft 分布式事务协调器(MSDTC)服务,因为此服务需要 Kerberos 身份验证。
-
您的 RDS for SQL Server 数据库实例不使用自托管式 AD 域的网络时间协议(NTP)服务器。而是使用 AWS NTP 服务。
-
SQL Server 链接服务器必须使用 SQL 身份验证连接加入自托管式 AD 域的其他 RDS for SQL Server 数据库实例。
-
来自自托管式 AD 域的 Microsoft 组策略对象(GPO)设置不适用于 RDS for SQL Server 数据库实例。
设置自托管式 Active Directory 概述
要为 RDS for SQL Server 数据库实例设置自托管式 AD,请执行以下步骤,详情请参阅设置自托管式 Active Directory:
在您的 AD 域中:
-
创建组织单位(OU)。
-
创建 AD 域用户。
-
将控制权委派给 AD 域用户。
从 AWS Management Console或 API:
-
创建 AWS KMS 密钥。
-
使用 AWS Secrets Manager 创建密钥。
-
创建或修改 RDS for SQL Server 数据库实例,然后将其加入自托管式 AD 域。
了解自托管式 Active Directory 域成员资格
在创建或修改数据库实例后,实例将成为自托管式 AD 域的成员。AWS 控制台将指示数据库实例的自托管式 Active Directory 域成员资格的状态。数据库实例的状态可以是以下状态之一:
-
已加入 – 实例是 AD 域的成员。
-
正在加入 – 实例正处于成为 AD 域成员的过程中。
-
待联接 – 实例成员资格待定。
-
pending-maintenance-join – AWS 将在下一计划维护时段期间尝试使实例成为 AD 域成员。
-
待删除 – 等待从 AD 域中删除实例。
-
pending-maintenance-removal – AWS将在下一计划维护时段期间尝试从 AD 域中删除实例。
-
失败 – 配置问题阻碍实例加入 AD 域。在重新发出实例修改命令之前检查并修复配置。
-
正在删除 – 正从自托管式 AD 域中删除实例。
成为自托管式 AD 域成员的请求可能因网络连接问题而失败。例如,您可能会创建数据库实例或修改现有实例,并且尝试使数据库实例成为某个自托管式 AD 域的成员会失败。在这种情况下,您重新发出命令来创建或修改数据库实例,或者修改新创建的实例来加入自托管式 AD 域。
还原 SQL Server 数据库实例,然后将其添加到自托管式 Active Directory 域
您可以还原数据库快照或对 SQL Server 数据库实例执行时间点恢复(PITR),然后将其添加到自托管式 Active Directory 域。还原数据库实例后,使用步骤 6:创建或修改 SQL Server 数据库实例中介绍的过程修改此实例,以将数据库实例添加到自托管式 AD 域。