Win7操作系统用户帐户控制功能详解收获很多的( 五 )


自动提升与UAC 的目标:
那么 , 所有特殊自动提升规则背后的原理是什么?选择要自动提升哪些程序以及不自动提升哪些程序是由以下问题确定的:“应用程序开发人员是否能够利用自动提升无意间或不费力地依赖于管理权限?”由于可以使用 Cmd.exe 通过命令行参数来执行批处理脚本 , 并且普通用户不需要以提升方式运行命令提示符(大多数用户甚至不知道命令提示符是什么) , 因此未将 Cmd.exe 列入自动提升的清单 。 同样 , 承载控制面板插件的可执行文件 Rundll32.exe 在 Windows 7 的最终版本中也未自动提升 , 因为对于任何常见管理任务而言 , 并不需要对其进行提升 , 并且 , 如果 Rundll32.exe 进行了自动提升 , 则它通过命令行承载任意 DLL 的能力将会导致开发人员要求使用管理员权限 , 而自己却未意识到 。
自 Windows Vista 测试版发布以来 , 最终用户一直在要求 Windows 提供一种向自动提升列表中添加任意应用程序的方法 。 经常被提及的原因是:他们常用的某个第三方应用程序强制他们不断单击提升权限提示 , 而这已经成为他们日常工作的一部分 。 就像 Windows Vista 一样 , Windows 7 并未提供这种功能 。 我们理解这种操作非常繁琐 , 并且可能有这些应用程序无法在没有管理权限的情况下运行的合理原因 , 但开发人员将会避免将其代码修正为使用标准用户权限 , 而这样的风险太高 。 即使有关哪些应用程序进行自动提升的列表只能由管理员访问 , 但开发人员只需更改其要求一次性提升的应用程序安装程序 , 就可将其应用程序添加到列表中 。 作为替代 , 我们选择进行投资来进行培训并与应用程序开发人员密切合作 , 以确保其程序能够以标准用户身份正常工作 。
很多人发现 , 采用 PA 帐户通过标准用户权限运行的第三方软件可以利用自动提升来获取管理权限 。 例如 , 软件可以使用 WriteProcessMemory API 将代码注入资源管理器 , 并使用 CreateRemoteThread API 来执行该代码 , 这种技术称为 DLL 注入 。 由于代码在资源管理器(一种 Windows 可执行文件)中执行 , 因此它可以利用自动提升的 COM 对象(比如“复制”/“移动”/“重命名”/“删除”/“链接”对象)来修改系统注册表项或目录 , 并为软件授予管理权限 。 如果是这样 , 这些步骤将需要蓄意谋划 , 而且并非无关紧要 , 因此 , 与将其软件修正为使用标准用户权限来运行相比较 , 我们不相信正当的开发人员会选择进行这些步骤 。 事实上 , 我们建议任何应用程序开发人员不要依赖于系统中的提升行为 , 并且建议应用程序开发人员测试其软件在标准用户模式下运行的情况 。
接下来的发现是 , 恶意软件可以使用同样的技术获取管理权限 。 同样 , 情况确实如此 , 但正如我前面指出的 , 恶意软件也可以通过提示的提升来危害系统 。 从恶意软件的角度来看 , Windows 7 的默认模式并不比“始终通知”模式(“Vista 模式”)安全多少 , 并且 , 采用管理权限的恶意软件在 Windows 7 的默认模式下运行时 , 将仍然会崩溃 。
结论:
总而言之 , UAC 是一组具有一个整体目标的技术:使用户能够以标准用户身份运行 。 因为对 Windows 进行了更改 , 使标准用户能够执行以前需要管理权限的更多操作 , 再结合文件和注册表虚拟化以及提示 , 从而共同实现了此目标 。 最终标准是:默认的Windows 7 UAC 模式通过减少提示使 PA 用户的体验更加流畅、允许用户控制可以修改其系统的合法软件 , 并仍然实现 UAC 的目标 , 即让更多的软件能够在没有管理权限的情况下运行 , 并继续使软件生态系统转变为编写能够使用标准用户权限工作的软件 。
关于Win7操作系统的用户帐户控制功能就给大家叙述到这里了 , 还在懵圈的伙伴 , 可以将此文多看两遍 , 相信大家就明白了!
【Win7操作系统用户帐户控制功能详解收获很多的】以上内容就是关于Win7操作系统用户帐户控制功能详解收获很多的的内容win7用户帐户控制,用户帐户控制uac的作用,电脑用户帐户控制 , 更新资讯请关注我们!

推荐阅读