如何在IIS 7.5和PHP(Web平台安装程序)上设置委派

我们在Win Server 2008 R2的IIS 7.5下使用PHP成功运行或企业Intranet。 我们使用Web平台安装程序来设置PHP。 模仿从一开始就工作正常,但没有configuration代表团。

我的理解是,“模拟”(有时称为单跳)从客户端工作站获取访问令牌,并使用它在Web服务器上运行脚本,即第一跳。 当应用程序想要读取/写入networking文件共享上的文件时就会出现问题。 这是我进一步的理解,“委派”,有时被称为“双跳”采取相同的访问令牌,并将其传递到Web服务器(第二跳)用于访问远程文件。 代表团不工作。 我已经阅读了很多地方,委派是我所需要的,但不能find如何在IIS 7.5中启用它的说明。

如果您运行工作组/域名和本地/域帐户或证书,委派以不同的方式工作。 我假设你运行一个域,并希望使用Kerberos代表团。

如果您必须启用您的应用程序在Active Directory中运行的“受信任进行委托”的帐户(打开ADUC(或运行server 2012的ADAC),请导航到帐户 – >属性 – >委派选项卡并启用完全或有限的授权)。

只有具有注册的SPN的域帐户才能被委托信任。 内置计算机帐户默认情况下已注册SPN,但如果您使用常规用户帐户,则必须先为您的Web应用程序和帐户注册SPN,然后才能使其成为受信任的委派(委派选项卡不会显示对于缺less注册SPN的帐户)。

如何设置SPN: http : //social.technet.microsoft.com/wiki/contents/articles/717.service-principal-names-spns-setspn-syntax-setspn-exe.aspx

从默认虚拟帐户更改应用程序帐户IIS创build“IIS AppPool \ applicationName”到NetworkService(如果您决定使用计算机帐户)或新创build的用户帐户(如果您去那个path)。

确保您的应用程序已configuration为使用Windows身份validation。 Windows身份validation使用NTLM或Kerberos,只有Kerberos支持委派,因此您必须拥有SPN,否则NTLM将用于身份validation,并且不起作用。