如何允许管理员在没有UAC提升的情况下编辑我的应用程序的配置文件?

Jus*_*ant 3 installation uac text-editor elevation windows-server-2008

我的公司生产一个跨平台的服务器应用程序,它从用户可编辑的配置文件加载其配置.在Windows上,配置文件ACL由我们的安装程序锁定,以允许所有用户读取,但仅限于编辑到管理员和本地系统.

不幸的是,在Windows Server 2008上,即使是本地管理员也不再具有管理员权限(因为UAC),除非他们正在运行提升的应用程序.这引起了用户的抱怨,他们无法使用自己喜欢的文本编辑器打开并保存配置文件更改 - 他们可以打开文件(因为任何人都可以阅读)但无法保存.

任何人都有我们的应用程序安装程序中我们可以做什么(如果有的话)的建议,以便在Windows Server 2008上更轻松地为管理员编辑?

相关问题:如果Windows Server 2008管理员想要编辑仅限管理员的配置文件,他通常如何操作?他是否被迫使用一个足够聪明的文本编辑器,以便在需要提升时自动提升,就像Windows资源管理器响应访问被拒绝错误一样?他是否从提升的命令提示符窗口启动编辑器?别的什么?

And*_*bel 5

在我看来,管理员无法右键单击记事本并选择"以管理员身份运行"不应该是管理员,但是......在现实生活中有这样的管理员.

UAC的工作原理是从用户的安全令牌中禁用管理员组SID,直到您运行具有提升权限的程序.当以非提升模式运行时,遗憾的是无法利用管理权限.

一个解决方法,不幸的是需要一些非常重要的工作可能是:

  • 为配置文件创建自定义文件名后缀.
  • 创建一个小应用程序,注册为该配置文件的处理程序.
  • 将小应用程序标记为需要提升的权限(您可以在创建新应用程序时执行此操作).

小应用程序应该做的唯一事情是在注册表中找到.txt文件的注册处理程序,然后使用它来打开文件 - 具有提升的权限.