Azure 401未经授权使用OData更新和删除

Azure 401未经授权使用OData更新和删除,azure,odata,wcf-data-services,restlet,http-status-code-401,Azure,Odata,Wcf Data Services,Restlet,Http Status Code 401,这是我第一次偶然发现一个尚未(完全)提供解决方案的问题,但我希望有人能提供帮助 我的问题类似于 也就是说,我有一个WCF数据服务,每当我尝试进行更新或删除时,我都会得到一个401(读取和发布工作没有任何问题)。与上面提到的帖子不同的是,我不是在IIS中托管服务,而是在WindowsAzure上托管服务,因此我无法应用该解决方案 我在使用OData扩展的.NET客户端和restlet客户端上都遇到了相同的问题(401:尝试更新或删除时凭据无效)。但是,在.NET客户端上,我可以通过设置UsePos

这是我第一次偶然发现一个尚未(完全)提供解决方案的问题,但我希望有人能提供帮助

我的问题类似于

也就是说,我有一个WCF数据服务,每当我尝试进行更新或删除时,我都会得到一个401(读取和发布工作没有任何问题)。与上面提到的帖子不同的是,我不是在IIS中托管服务,而是在WindowsAzure上托管服务,因此我无法应用该解决方案

我在使用OData扩展的.NET客户端和restlet客户端上都遇到了相同的问题(
401:尝试更新或删除时凭据无效)。但是,在.NET客户端上,我可以通过设置UsePostTunneling=true来解决此问题

在我的服务中,我设置了
config.SetEntitySetAccessRule(“*”,EntitySetRights.All)


有人知道我如何解决restlet客户端的问题吗?

我要检查的第一件事是,您是否在处理程序中启用了PUT和DELETE动词。您是从完整IIS中的web角色运行此功能,还是使用托管web核心(HWC)或其他功能?通常,我看到的不仅仅是401错误,而是405错误,因为WebDAV在机器上,并且在那里放置和删除动词冲突。你最终不得不为应用程序禁用WebDAV


我还会在web.config中检查您的身份验证方法。我看到“无”类型会导致问题,所以请将其更改为表单。

谢谢dunnry,但我正在Windows Azure上托管我的服务(使用SQL Azure数据库),而不是IIS。所以我猜IIS设置不适用(我对这一点完全陌生,所以我猜)。为了能够在我的restlet客户端上更新/删除,我想我要么必须在我的服务中解决问题,要么在我的客户端中解决问题(如前所述,对于我的.NET客户端,我可以通过使用后隧道使其工作)。仅供参考:为了开发我的服务,我遵循了在上的教程。Windows Azure是运行IIS的Windows。因此,它非常适用。但是,如果您没有使用webrole,答案可能会略有变化。编辑,我从教程中看到您正在将Webrole与完整IIS一起使用。请检查我提到的解决方案(查看处理程序,尝试删除WebDAV模块,并检查web.config中的身份验证方法)