我正在尝试配置我的 Windows 2008 服务器,以便我的开发人员无需登录或成为管理员即可查看其状态。不幸的是,Windows 2008 中为远程非管理员用户设置的权限不包括枚举或以其他方式查询服务的能力。这会导致与远端 SCM 联系的所有内容失败(Win32_Service、sc.exe、services.msc 等)。
我如何设置权限,以便他们至少可以列出服务并查看它们是否正在运行?
答案1
今天在谷歌上搜索后,我发现这篇 MSDN 文章。 它似乎到目前为止,即使安全描述符适用于 Windows Server 2003,它也能正常工作。我发现您可以sc sdshow SCMANAGER
获取当前值,因此明天回到办公室时,我将进行比较和对比,以确保我没有锁定我不应该锁定的东西 :-)
答案2
一个快速而肮脏的解决方案是列表通过计划任务每分钟运行一次并转储到可通过 IIS 获得的文本文件中。
答案3
读这有关与 Windows 服务安全相关的安全描述符定义语言 (SDDL) 的文章。希望您能找到满足您所有需求的访问控制参数组合。
答案4
您可以通过编辑组策略来允许非管理员使用 SCM 或任何其他 MMC 管理单元。也许此 Microsoft KB 条目会帮助你。
...无需登录或成为管理员...
这是不可能的,因为 Windows 在几乎每个界面上都使用授权,而且通过 MMC 管理单元的连接也需要授权。