Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применимо к: SQL Server 2025 (17.x)
В этой статье показано, как использовать управляемые удостоверения для расширяемого управления ключами (EKM) с Azure Key Vault (AKV) на SQL Server с поддержкой Azure Arc.
Обзор
Начиная с версии SQL Server 2025 (17.x), управляемые удостоверения поддерживаются для EKM с помощью AKV и управляемых аппаратных модулей безопасности (HSM) на SQL Server, включенном через Azure Arc. Управляемые удостоверения рекомендуются в качестве метода аутентификации, позволяющего различным службам Azure аутентифицировать сервер SQL, включенный через Azure Arc, без использования паролей или секретов. Дополнительные сведения об управляемых удостоверениях см. в Типы управляемых удостоверений.
Предпосылки
- Подключите экземпляр SQL Server к Azure Arc. Дополнительные сведения см. в статье "Автоматическое подключение SQL Server к Azure Arc".
- Включите управляемую идентификацию для SQL Server 2025.
- Azure Key Vault и ключ, созданный в хранилище ключей. Дополнительные сведения см. в статье Создание хранилища ключей.
- Управляемое удостоверение для SQL Server, включенное с помощью Azure Arc, должно
Key Vault Crypto Service Encryption Userиметь назначенную роль в хранилище ключей, если вы используете управление доступом на основе ролей Azure, или разрешения на развертывание и оборачивание ключей, если вы используете политику доступа к хранилищу. - Скачайте и установите предварительную версию соединителя SQL Server.
Шаг 1. Добавьте ключ реестра для провайдера EKM
Прежде чем создавать учетные данные с помощью управляемого удостоверения, необходимо добавить раздел реестра, чтобы поставщик EKM мог использовать управляемые удостоверения. Этот шаг должен выполняться администратором компьютера. Подробные инструкции см. в разделе и шаге 4: Добавление раздела реестра для поддержки поставщика EKM.
Шаг 2. Настройка master базы данных
Откройте SQL Server Management Studio.
Настройте SQL Server для использования EKM, выполнив следующий скрипт Transact-SQL:
-- Enable advanced options. USE master; GO EXECUTE sp_configure 'show advanced options', 1; GO RECONFIGURE; GO -- Enable EKM provider EXECUTE sp_configure 'EKM provider enabled', 1; GO RECONFIGURE; GOЗарегистрируйте коннектор SQL Server в качестве поставщика EKM в SQL Server.
Создайте криптографического провайдера с помощью соединителя SQL Server, который служит провайдером EKM для Azure Key Vault. В этом примере имя поставщика —
AzureKeyVault_EKM.CREATE CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM FROM FILE = 'C:\Program Files\SQL Server Connector for Microsoft Azure Key Vault\Microsoft.AzureKeyVaultService.EKM.dll'; GOЗамечание
Длина пути файла не может превышать 256 символов.
Шаг 3. Создание учетных данных сервера с помощью управляемого удостоверения
В следующем примере показано, как создать учетные данные для управляемого удостоверения, используемого в Azure Key Vault:
CREATE CREDENTIAL [<akv-name>.vault.azure.net]
WITH IDENTITY = 'Managed Identity'
FOR CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM;
Вы можете проверить имя AKV, сделав запрос sys.credentials.
SELECT name, credential_identity
FROM sys.credentials;
Для WITH IDENTITY = 'Managed Identity' пункта требуется основное управляемое удостоверение, назначенное SQL Server, который активирован Azure Arc.
Дополнительные сведения о настройке EKM с помощью AKV см. в статье Настройка расширенного управления ключами SQL Server TDE с помощьюAzure Key Vault.
Создание учетных данных для использования с управляемыми аппаратными модулями безопасности (HSM)
Чтобы создать учетные данные для использования с управляемыми аппаратными модулями безопасности Azure Key Vault (HSM), используйте следующий синтаксис:
CREATE CREDENTIAL [<akv-name>.managedhsm.azure.net]
WITH IDENTITY = 'Managed Identity'
FOR CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM;
Дополнительные сведения о настройке EKM с помощью AKV см. в статье Настройка расширенного управления ключами SQL Server TDE с помощьюAzure Key Vault.
Команды T-SQL для обновления существующей конфигурации EKM для использования управляемых удостоверений
Если ваша текущая конфигурация использует EKM с AKV с секретом, необходимо удалить существующие учетные данные доступа и создать новые с помощью управляемого удостоверения. В следующих командах T-SQL показано, как обновить существующую конфигурацию EKM для использования управляемых удостоверений:
Создайте учетные данные с помощью управляемого удостоверения:
CREATE CREDENTIAL [<akv-name>.vault.azure.net] WITH IDENTITY = 'Managed Identity' FOR CRYPTOGRAPHIC PROVIDER AzureKeyVault_EKM;Если есть учетные данные, использующие секрет, связанный с именем входа домена администрирования SQL Server, удалите существующие учетные данные:
ALTER LOGIN [<domain>\<login>] DROP CREDENTIAL [<existing-credential-name>];Свяжите новые учетные данные с именем входа домена администрирования SQL Server:
ALTER LOGIN [<domain>\<login>] ADD CREDENTIAL [<akv-name>.vault.azure.net];
Вы можете проверить зашифрованное представление базы данных, чтобы проверить шифрование базы данных с помощью следующего запроса:
SELECT *
FROM sys.dm_database_encryption_keys
WHERE database_id = db_id('<your-database-name>');
Дополнительные сведения о настройке EKM с помощью AKV см. в статье Настройка расширенного управления ключами SQL Server TDE с помощьюAzure Key Vault.
Сообщения об ошибках
флаг трассировки 4675 можно использовать для проверки учетных данных, созданных с помощью управляемой идентичности. Если инструкция CREATE CREDENTIAL выполнялась без включения флага трассировки 4675, сообщение об ошибке не отображается, если основное управляемое удостоверение не установлено для сервера. Чтобы устранить эту проблему, учетные данные необходимо удалить и создать заново после включения флага трассировки.
Ограничения
- Управляемое удостоверение для уровня сервера поддерживается только для SQL Server 2025, под управлением Azure Arc, и не для SQL Server, размещенного локально. Управляемая идентификация уровня сервера не поддерживается для Linux.
- Для поддержки управляемых удостоверений для EKM с AKV требуется последняя предварительная версия соединителя SQL Server.