The*_*nix 6 sql-server assemblies sql-server-2008 public-key
我正在尝试使用非对称密钥将程序集添加到SQL2008中的数据库.
我们使用十六进制字符串添加程序集(仅通过sql查询向程序集添加程序集)
USE [master]
GO
IF NOT EXISTS (SELECT * from sys.asymmetric_keys where name = 'ManagedAsymmetricKey')
BEGIN
CREATE ASYMMETRIC KEY ManagedAsymmetricKey FROM FILE = 'C:\Managed.dll'
CREATE LOGIN CLRLogin FROM ASYMMETRIC KEY ManagedAsymmetricKey
GRANT UNSAFE ASSEMBLY TO CLRLogin
END
GO
USE [$dbName]
GO
CREATE ASSEMBLY [Managed]
AUTHORIZATION [dbo]
FROM 0x4D5A....
WITH PERMISSION_SET = UNSAFE
GO
Run Code Online (Sandbox Code Playgroud)
这将通过我们收到的网络在本地实例上工作;
The certificate, asymmetric key, or private key file does not exist or has invalid format.
我可能错误地认为我应该首先添加密钥,我是否应该添加程序集然后做一些事情CREATE ASYMMETRIC KEY ManagedAsymmetricKey FROM ASSEMBLY [workingDB].[dbo].[Managed]?
您可以使用以下步骤使其正常工作:
授予登录不安全的程序集权限
CREATE ASSEMBLY [Managed]
AUTHORIZATION [dbo]
FROM 0x4D5A....
WITH PERMISSION_SET = SAFE
CREATE ASYMMETRIC KEY ManagedAsymmetricKey FROM ASSEMBLY [Managed]
DROP ASSEMBLY [Managed]
CREATE LOGIN CLRLogin FROM ASYMMETRIC KEY ManagedAsymmetricKey
GRANT UNSAFE ASSEMBLY TO CLRLogin
Run Code Online (Sandbox Code Playgroud)| 归档时间: |
|
| 查看次数: |
3415 次 |
| 最近记录: |