Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Область применения: SQL Server Управляемый экземпляр SQL Azure
Создает поставщик шифрования в SQL Server из поставщика расширенного управления ключами (EKM).
Соглашения о синтаксисе Transact-SQL
Синтаксис
CREATE CRYPTOGRAPHIC PROVIDER provider_name
FROM FILE = path_of_DLL
Аргументы
provider_name
Имя поставщика расширенного управления ключами.
path_of_DLL
Путь к файлу .dll, реализующего интерфейс управления расширяемыми ключами SQL Server. При использовании Соединителя SQL Server для Microsoft Azure Key Vault расположением по умолчанию является C:\Program Files\SQL Server Connector for Microsoft Azure Key Vault\Microsoft.AzureKeyVaultService.EKM.dll.
Замечания
Все ключи, созданные поставщиком, ссылаются на поставщик по его идентификатору GUID. Идентификатор GUID сохраняются во всех версиях DLL-библиотеки.
Библиотека, реализующая интерфейс SQLEKM, должна быть подписана цифровой подписью с использованием любого сертификата. SQL Server проверяет подпись. При этом проверяется цепочка сертификатов, корень которой должен быть установлен в расположение Trusted Root Cert Authorities системной папки Windows. Если проверка подписи не выполнена должным образом, выполнение инструкции CREATE CRYPTOGRAPHIC PROVIDER оканчивается неудачей. Дополнительные сведения о сертификатах и цепочках сертификатов см. в разделе Сертификаты SQL Server и асимметричные ключи.
Когда поставщик EKM DLL-библиотек реализует не все необходимые методы, то инструкция CREATE CRYPTOGRAPHIC PROVIDER может вернуть ошибку 33085:
One or more methods cannot be found in cryptographic provider library '%.*ls'.
Если файл заголовка, используемый для создания поставщика EKM DLL-библиотек, устарел, то инструкция CREATE CRYPTOGRAPHIC PROVIDER может вернуть ошибку 33032:
SQL Crypto API version '%02d.%02d' implemented by provider is not supported. Supported version is '%02d.%02d'.
Разрешения
Требует разрешения CONTROL SERVER или членства в предопределенной роли сервера sysadmin.
Примеры
В следующем примере создается поставщик шифрования, вызываемого SecurityProvider в SQL Server, из файла .dll. Этот DLL-файл имеет имя c:\SecurityProvider\SecurityProvider_v1.dll и установлен на сервере. Сначала необходимо установить на сервере сертификат поставщика.
-- Install the provider
CREATE CRYPTOGRAPHIC PROVIDER SecurityProvider
FROM FILE = 'C:\SecurityProvider\SecurityProvider_v1.dll';
См. также
Расширенное управление ключами (EKM)
ALTER CRYPTOGRAPHIC PROVIDER (Transact-SQL)
DROP CRYPTOGRAPHIC PROVIDER (Transact-SQL)
CREATE SYMMETRIC KEY (Transact-SQL)
Расширенное управление ключами с помощью Azure Key Vault (SQL Server)
Настройка расширенного управления ключами SQL Server TDE с помощью Azure Key Vault
sys.cryptographic_providers
sys.dm_cryptographic_provider_properties