有没有办法在运行时从完全信任切换到部分信任? (WPF)
我不希望我的 WPF 应用程序在完全信任中运行,但不可能在部分信任 AppDomain 中运行 WPF(我什至尝试使用 WPF 托管/互操作)并且 WPF 浏览器应用程序不符合我的需求,所以我的问题是:
是否存在在 WPF 创建窗口并进行所有初始化非托管调用后,有一种方法可以在运行时更改当前 AppDomain 的 SecurityZone 吗?
谢谢 :)
I don't want my WPF application to run in Fulltrust but it's impossible to run WPF in a partial trust AppDomain (i tried even with WPF hosting/interop) and WPF Browser Application does not fit my needs, so my question is:
is there a way to change the SecurityZone of the current AppDomain at runtime after WPF has created the Window and made all the initialization unmanaged calls?
Thank you :)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是不可能的,因为一旦您在 FullTrust 中运行,您就被“污染”了,并且运行时不可能保证部分信任。但是,根据您的场景,您可以创建另一个 AppDomain 来在完整/部分域中运行不受信任的代码,并将对象编组到完整/部分域,或者您可以将应用程序编写为具有更严格限制的 SL4 浏览器外应用程序。
It is impossible, as once you have run in FullTrust you are 'tainted', and it is impossible for the runtime to guarantee Partial Trust. However, depending on your scenario, you can create another AppDomain to run untrusted code in, and marshal objects to and from the full/partial domain, or you can write your app as a SL4 Out-of-Browser app which has stricter restrictions.