【问题标题】:Somehow able to write to ProgramData with UAC enabled in Windows 8在 Windows 8 中启用 UAC 的情况下,能够以某种方式写入 ProgramData
【发布时间】:2013-10-22 19:50:43
【问题描述】:

基于标准用户无法在 Vista 及更高版本上直接写入 ProgramData 的假设,我将在其中创建一个目录,并让所有用户完全控制该目录以供我的程序使用。它工作正常,但在测试期间,我尝试以访客身份(应该受到限制)运行一些测试代码,它成功创建了目录并授予了预期的权限。当我看到这么多关于这种事情不起作用的故事时,我没想到它会起作用。如果我创建一个标准用户帐户并从那里运行程序,也会发生同样的事情。

还有其他人看到过这种行为吗?它没有被虚拟化,似乎对程序清单的 UAC 感知调整(我在这里使用 VS2005)正在工作,因为当我尝试写入 System32 而不是 VirtualStore 中的文件时出现错误。

我会放手去算我的祝福,但这个软件不会只在我的机器上运行,我想确保它可以在其他环境中运行。

【问题讨论】:

  • 默认权限允许非管理员用户在 ProgramData 中创建目录。 AFAIK 一直都是这样。
  • 谢谢,我不知道。在大多数情况下,至少,我正在测试的代码将使用管理员权限运行和设置(作为本地系统运行)。

标签: windows uac


【解决方案1】:

用户可以写入ProgramData 文件夹,因为创建文件和文件夹的权限默认授予用户

在 Windows 7 上也是如此。在 Windows Vista 上也可能如此。

【讨论】:

    【解决方案2】:

    默认权限允许非管理员用户在 ProgramData 中创建目录,因此观察到的行为与预期一致。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-25
      • 1970-01-01
      相关资源
      最近更新 更多