-1

带有 SP1 的 Server 2008 机器,带有 SP1 的 Visual Studio 2008。我的用户;开发人员,在本地管理员组中。也就是说,我在 Visual Studio 中执行的一些操作(使用 Web 应用程序的属性窗口来调用在本地 IIS 中创建虚拟目录)告诉我需要管理员权限。这比什么都烦,我可以通过右键单击(以管理员身份运行)启动 VS 来执行操作 - 但我很好奇是否有人知道为什么会发生这种情况?

4

3 回答 3

2

这不是它在带有 UAC 的 Vista 上的工作方式。您的用户在 admin 组中意味着该用户可以执行管理任务。假设您有一个普通用户,并且该用户已登录并尝试执行管理任务。该用户将无法执行此类任务,因为它不在管理员组中。他需要提供管理员的用户名/密码才能执行此类任务。但是,如果您的用户是管理员,您将被授予执行任务的访问权限。

您所说的基本上是 Windows XP 的工作原理,我们都知道所有安全问题的结果。在 XP 上,您是具有管理员权限的管理员,您可以在系统中做任何您想做的事情。这不是很安全。在 Vista 中,您在管理员组中,但这并不意味着每个任务都应该/将以管理员权限运行。您是管理员,您可以在系统中更改您想要的任何内容,但默认情况下,事情将以尽可能少的管理员权限运行,以防止任何安全问题。您需要管理员权限,以管理员权限运行应用程序。

这就是它的工作方式以及它应该如何工作。

反正我就是这么看的:)

于 2008-11-25T21:27:59.343 回答
0

因为这就是它的工作原理,我猜......你的用户所在的组并不重要,重要的是应用程序是否以管理员权限运行。如果是,那么您将能够执行管理操作,否则您将无法执行。

所有使用 UAC 执行管理员操作的应用程序(当您看到安全徽章时)它们将 a) 以管理员权限重新启动应用程序或 b) 启动具有管理员权限的进程以执行相应的操作。如果不与他们一起启动进程,他们将永远无法授予您管理员权限。

这就是它真正的工作方式。据我所知,这就是它的工作原理......

于 2008-11-25T17:31:01.227 回答
0

Nazgulled:您的第一个陈述将表明进程在安全上下文中启动,而不是它们从当前用户继承的安全上下文。我的好奇心源于这种基本的理解,即一个进程使用我的令牌运行。如果我的用户在管理员组中,那么它不会以管理员权限运行吗?也许我对此的基本理解是错误的——用户权限/安全和进程安全上下文可能不像我理解的那样紧密相关......

于 2008-11-25T17:56:43.093 回答