限制Visual Studio调试器访问

时间:2017-12-10 04:17:41

标签: .net security debugging visual-studio-2017 visual-studio-debugging

我有一个.Net应用程序,它作为主机应用程序,加载用户创建的程序集并动态地将它们作为插件运行。
主机应用程序和插件在同一个应用程序域中运行。我想为这些插件的作者提供附加到进程的机会,以便他们可以在主机应用程序运行时调试他们的插件。

但是,我还希望在Visual Studio中隐藏宿主应用程序中的某些变量值。

例如,如果我将一个秘密值存储在静态变量中,例如HostApplication.Passwords.SecretApiPassword,即使插件作者不会在他们的项目中引用此类,并且他们恰好知道了名称空间这个静态,他们所要做的只是使用立即窗口打印HostApplication.Passwords.SecretApiPassword,Visual Studio将回显该值。

我已尝试DebuggerBrowseable并将变量标记为内部变量,但由于在调试模式下,调试器似乎可以完全访问所有内容。

是否有任何设计模式或技巧可以保护Visual Studio调试器中的某些值?

0 个答案:

没有答案