我的目标是从较低的层次上了解当以“管理员”身份启动程序时实际发生的情况。
答案 0 :(得分:1)
登录时,Windows将创建一个访问令牌。这可以识别您,您所属的组以及您的特权。并且请注意,用户是否是管理员取决于用户是否是Administrators组的成员。
在没有UAC的情况下,当您运行程序时,它会获得访问令牌的副本,这将控制程序可以访问的内容。
使用UAC,当您运行程序时,它将获得受限的访问令牌。这是原始访问令牌,其中“ Administrators”已从组列表中删除(以及其他一些更改)。即使您的用户是Administrators组的成员,该程序也不能使用Administrator特权。
当您选择“以管理员身份运行”并且您的用户是管理员时,将使用原始的非限制访问令牌启动程序。如果您的用户不是管理员,则系统会提示您输入管理员帐户,程序将在该帐户下运行。