如何暂时降低海拔



情况是我以管理员身份运行服务。

我们有一个运行自定义代码的标注(想想脚本)。 它使用 codedom 编译来创建程序集并创建类型和调用方法(基于代码)。

我想在标注期间暂时删除管理员权限,然后在之后恢复这些权限。

我认为你不能以你描述的方式"放弃"特权;你的服务以用户身份运行,并且允许该用户进行一定量的访问权限。您可以要求 Windows 暂时授予您更多权限(这就是 UAC 的全部内容),但您不能要求它授予您更少的权限!

我将在系统中创建第二个用户以运行脚本(具有适当的较低访问级别),并在自定义代码期间模拟该用户。

[编辑]原来我不知道我在说什么。根据此链接,UAC 以相反的方式实现,方法是创建一组受限制的权限并在该上下文中运行代码。

http://weblogs.asp.net/kennykerr/archive/2006/09/29/Windows-Vista-for-Developers-1320-第4-1320部分-用户帐户控制.aspx

我最终在沙盒应用程序域中运行代码,如链接中所述:

如何:在沙盒中运行部分受信任的代码

http://msdn.microsoft.com/en-us/library/bb763046%28v=vs.100%29.aspx

最新更新