создание асимметричного ключа по сети

Я пытаюсь добавить сборку в базу данных в 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

Это будет работать на локальном экземпляре, однако по сети, которую мы получаем; Сертификат, асимметричный ключ или файл закрытого ключа не существует или имеет недопустимый формат.

Возможно, я ошибочно полагаю, что сначала нужно добавить ключ, если я добавляю сборку, а затем выполняю что-то вроде CREATE ASYMMETRIC KEY ManagedAsymmetricKey FROM ASSEMBLY [workingDB]. [Dbo]. [Managed] ?

6
задан Gilles 'SO- stop being evil' 19 March 2019 в 01:12
поделиться