“所需的特权不是由客户持有”。

我有xis的iis5。 一切工作,直到我不得不把本地系统的iis windows服务的用户帐户更改为另一个用户( 详细信息 )。

现在,iis已经起来了,但是当我冲浪的时候,我得到了:

“所需的特权不是由客户持有”。

如何解决它?

你能提供更多的细节吗?

我的第一个直觉就是询问你运行IIS的帐号是否没有权限作为服务来运行(但是和错误的措辞不太一致)。

为了理智,您是否通过本地安全政策授予用户“作为服务运行”的权利?

本地安全策略MMC

更新1 :AH-HA! (首先,当你做了这个改变之后,你确实重新启动了IIS服务,对吧?如果仍然不行的话)删除“作为服务运行”权限并授予它作为操作系统的一部分对,然后重新启动www服务。 另外,为了理智,请清除浏览器caching。 这不应该是一个问题,但…

更新2 :由于您正在运行一个ASP应用程序(这是一个重要的信息…),请按照这里和这里描述的步骤

也:

  • 有关如何为ASP.NET创build服务帐户的说明
  • ASP.NET服务帐户需要权限的目录列表

我不确定,但同样gWaldo说这可能是在本地安全政策的一个设置

我相信你需要启用身份validation后模拟客户端(我可能是错的)

来自微软

要解决此问题,请validationASPNET帐户具有正确的用户权限,如下所示:

%windir%\ Microsoft.NET \ Framework \版本\临时ASP.NET文件:完全控制

%windir%\ Temp:完全控制

应用程序文件夹:读取

%installroot%层次结构(例如,%windir%\ Microsoft.Net \ Framework \ Version):读取

%windir%\ Assembly:阅读

注意这是全局程序集caching。 您不能直接使用Windows资源pipe理器编辑此文件夹的ACL。 而是打开一个命令窗口,然后运行以下命令:

cacls%windir%\ assembly / e / t / p domain \ useraccount:R

或者,在使用Windows资源pipe理器之前,请运行以下命令以注销Shfusion.dll:regsvr32-u shfusion.dll

在Windows资源pipe理器中设置用户权限后,运行以下命令重新注册Shfusion.dll:regsvr32 shfusion.dll

网站根目录(例如,%root%\ Inetpub \ Wwwroot)或默认网站指向的path:Read%windir%\ System32:Read

(通常,ASPNET帐户已被授予作为Users组成员的用户权限。)