我正在創建一個SSDT數據庫項目的數據庫並部署爲dacpac。 .NET程序集是該項目的組成部分,部署在安裝過程中失敗,出現以下錯誤信息:打開TRUSTACORTHY與dacpac
CREATE組裝「XYZ」 ASSEMBLY失敗,因爲裝配 「XYZ」未獲準PERMISSION_SET =不安全的。 程序集在以下任一情況下得到授權: 數據庫所有者(DBO)具有UNSAFE ASSEMBLY權限,並且數據庫 具有TRUSTWORTHY數據庫屬性;或者該組件使用證書或非對稱密鑰簽署 ,該證書或非對稱密鑰具有相應的具有UNSAFE ASSEMBLY權限的登錄 。
dbo是'sa'。我已進入項目屬性並在雜項選項卡下選中「可信」。不過,我仍然得到錯誤,當我運行
select name, is_trustworthy_on from sys.databases
我看到is_trustworthy_on
爲0。看來這個設置沒有任何效果。搜索後,我發現:
一些數據庫選項,如守信,DB_CHAINING和 HONOR_BROKER_PRIORITY,不能調整作爲部署 過程的一部分。
從http://msdn.microsoft.com/en-us/library/ee210569.aspx
字調整意味着改變給我。這是一個新的數據庫。但是,即使對於新的數據庫,如果它是真的,爲什麼設置存在於對話框中?我是否需要將此腳本編寫爲部署前的一部分?
我知道它並沒有真正回答你的問題,但你可以嘗試簽署程序集而不是讓數據庫值得信賴。 – Mansfield 2014-12-01 20:56:00
這是可能的,但並不理想。我正在簽約自動化原狀態。 – Swoogan 2014-12-01 21:11:01