我正在處理包含一系列應用程序的所有表的數據庫(我們稱之爲DB_data)。爲了儘量減少升級過程中的停機時間,已創建一個外觀數據庫(我們稱之爲DB_facade),該數據庫具有DB_data中每個表的視圖。它還包含所有的功能和存儲過程,這些功能和存儲過程與這些觀點相反。跨數據庫視圖權限
在試圖鎖定DB_data中的安全性時,我們對DB_data中的所有用戶的所有表執行了DENY操作。所有這些用戶也已在DB_facade中創建,並具有對視圖的權限。
這裏的問題是,因爲跨數據庫所有權鏈接DB_data中的DENYs重寫了DB_facade中的GRANT。
由於存在潛在的安全問題(儘管在我的原始測試中,這看起來糾正了訪問問題),我想避免爲這兩個數據庫啓用所有權鏈。此外,我們正在努力減少對應用程序的影響,因此要求通過存儲過程進行所有訪問並使用證書(例如)不起作用。
有沒有人有任何其他建議如何處理?
謝謝!
您可能會在[權限授予](http://www.sommarskog.se/grantperm.html)和[訪客用戶帳戶](http://www.mssqltips.com/tip.asp?提示= 1172)有幫助 – 2010-07-19 20:28:09