通過.Net互操作在部分受信任的環境中執行的代碼調用非託管代碼(如COM API)的正確方法是什麼?從部分受信任的代碼調用非託管代碼的正確方法
在開發用於Microsoft SharePoint的ASP.Net WebPart時,我必須通過COM API與另一個系統進行通信。通過將SharePoint的權限更改爲完整,我暫時解決了此問題。後來,我通過在提供SharePoint UnmanagedCode權限的最小設置之上實現自定義安全性來改進這一點,但這並不是什麼大的改進,因爲非託管代碼可以跳過CAS的其餘部分。
從我所收集的信息中,我可能需要一個完全信任的程序集,它允許部分受信任的調用者並充當託管和非託管域之間的層。另外我會想象需要一些額外的設置,允許部分信任的代碼調用完全信任的代碼,而完全信任的代碼不會受到部分信任的代碼的權限限制。
那麼正確的方法是什麼以及如何在實踐中實現它?
謝謝!我想知道我是如何錯過那一次的。我想我只關注非託管部分,而不是部分信任 - >完全信任的呼叫。 – 2009-04-27 08:37:34