允许非管理员以管理员身份运行程序(如 setuid 位)

Lev*_*Lev 5 windows windows-xp user-permissions

如何让非管理员用户在 Windows XP 上以管理员权限运行某个应用程序(在我的例子中是一个脚本)?

这类似于 *nix 上的 setuid 位。

Mat*_*ttB 4

这是以前非常相似的主题:
Set uid for windows

简短的回答“不”,带“但是”。长答案:

Microsoft 批准的正确方法是为您的应用程序创建一个“垫片”,将需要管理员权限的任何内容重定向到类似的用户模式区域。例如,如果您的应用程序尝试将注册表设置保存到 HKLM,则填充程序会将其放入 HKCU。

另请查看Aaron Margosis 的博客,了解有关此类事物的大量详细信息。

  • 啊,这是一个不同的问题 - 您应该能够更改服务上的 ACL 以允许所有用户启动/停止该服务。如果你得到 subinacl 我认为命令行将是: subinacl /service spooler /grant=Everyone=F (你显然可以将其更改为特定用户或特定访问权限)http://www.microsoft.com/downloads/details。 aspx?FamilyID=E8BA3E56-D8FE-4A91-93CF-ED6985E3927B&displaylang=en (4认同)
  • 我不会授予每个人完全访问权限有两个原因。首先,每个人都会创建一个安全漏洞,未经身份验证的非域用户现在可以访问。其次,完全访问权限允许用户更改服务上的 ACL(除了有权停止和启动服务之外) (4认同)