从IIS6迁移到IIS7之后,所有使用WCF ODATA服务的站点都会提示在尝试制作POST/POST/PUT/PAT/PATCH/PATCH/DELETE请求时凭证。将不断提示用户获得凭据,直到取消请求为止。取消请求后,他们将收到服务器的401.3
响应。
如果在包含WCF ODATA服务的*.svc
文件的文件夹上授予用户的"修改权限",则将被授权使用这些动词提出请求。ASP.NET模拟是未打开的。
AppPool在服务帐户下运行了集成的.NET 4,该帐户对网站的文件夹/文件进行了修改。
更新:看来这是设计的。授予ServerNameUsers
修改对*.svc
的访问确实可以解决问题。附录:具体来说,它看起来像Domain Users
或Authenticated Users
需要修改*.svc
的权利。
最终更新:更改措辞以使问题更通用/易于找到其他问题
这是设计。如果您禁用模仿,则使用NTFS ACL来保护资源。我知道一开始这似乎很奇怪,但是有些想法会使您理解,考虑到这种特定配置的限制,这是一种合理的方法。此行为记录在MSDN。