CREATE CRYPTOGRAPHIC PROVIDER (Transact-SQL)

通过可扩展的密钥管理 (EKM) 提供程序创建 SQL Server 内的加密提供程序。

主题链接图标Transact-SQL 语法约定

语法

CREATE CRYPTOGRAPHIC PROVIDER provider_name 
    FROM FILE = path_of_DLL

参数

  • provider_name
    可扩展密钥管理提供程序的名称。

  • path_of_DLL
    实现 SQL Server 可扩展的密钥管理接口的 .dll 文件的路径。

注释

提供程序创建的所有密钥都将按照提供程序的 GUID 引用提供程序。在 DLL 的所有版本中都将保留此 GUID。

必须使用任何证书对实现 SQLEKM 接口的 DLL 进行数字签名。SQL Server 将验证此签名。此签名包括其证书链,证书链的根目录必须安装在 Windows 系统的 Trusted Root Cert Authorities 位置。如果该签名未经正确验证,则 CREATE CRYPTOGRAPHIC PROVIDER 语句将失败。有关证书和证书链的详细信息,请参阅 SQL Server 证书和非对称密钥

权限

要求对对称密钥具有 CONTROL 权限。

示例

下面的示例通过 .dll 文件在 SQL Server 中创建名为 SecurityProvider 的加密提供程序。此 .dll 文件命名为 c:\SecurityProvider\SecurityProvider_v1.dll 并安装在服务器上。必须首先在服务器上安装此提供程序的证书。

-- Install the provider
CREATE CRYPTOGRAPHIC PROVIDER SecurityProvider
    FROM FILE = 'c:\SecurityProvider\SecurityProvider_v1.dll'