我有一个使用标准Visual Studio 2013 PHA模板编写的本地,高信任度提供程序托管的应用程序(PHA)。我遵循了Kirk Evans在他的博客中介绍的High-Trust / S2S应用程序的配置步骤:
一切工作都按预期进行,无需太多修改,直到我添加了一个服务来为AppInstalled事件托管事件接收器。尝试在启用事件的情况下安装应用程序时,我从SharePoint收到以下错误:
远程事件接收器标注失败。详细信息:HTTP请求未经客户端身份验证方案“匿名”授权。从服务器收到的身份验证标头是“ NTLM; Negotiate”。
现成的PHA在其服务绑定中未配置为支持匿名身份验证。当我通过web.config添加对匿名身份验证的支持时,该应用程序将安装并且所有事件接收器逻辑均按预期执行,包括将列表和安全组添加到主机Web的CSOM调用。
这给我留下了两部分的问题:
TIA
高信任度/ S2S应用程序事件接收者绝对需要匿名访问。
您可以使用HTTP来保护与App Event接收器的通信。一个建议是阻止SharePoint将从网络内部调用Web服务,从而阻止来自外部域的应用程序事件接收器的访问。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句