Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 问:使用.NET客户端的信号器身份验证在本地工作,但不在服务器上工作_C#_Asp.net Mvc_Authentication_Signalr_Credentials - Fatal编程技术网

C# 问:使用.NET客户端的信号器身份验证在本地工作,但不在服务器上工作

C# 问:使用.NET客户端的信号器身份验证在本地工作,但不在服务器上工作,c#,asp.net-mvc,authentication,signalr,credentials,C#,Asp.net Mvc,Authentication,Signalr,Credentials,我在IIS中托管我的Signaler,我有一个驻留在同一网站上的.net客户端。我正在使用windows身份验证,因此凭据的设置方式如下: hubConnection.Credentials = CredentialCache.DefaultCredentials; 当我在本地运行站点时,这一切都会起作用,但在服务器上部署时会出现401错误: SignalR: myhub.DoStuff failed to execute. Error: StatusCode: 401, ReasonPhra

我在IIS中托管我的Signaler,我有一个驻留在同一网站上的.net客户端。我正在使用windows身份验证,因此凭据的设置方式如下:

hubConnection.Credentials = CredentialCache.DefaultCredentials;
当我在本地运行站点时,这一切都会起作用,但在服务器上部署时会出现401错误:

SignalR: myhub.DoStuff failed to execute. Error: StatusCode: 401, ReasonPhrase: 'Unauthorized', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
  Server: Microsoft-IIS/8.5
  WWW-Authenticate: Negotiate
  WWW-Authenticate: NTLM
  X-Powered-By: ASP.NET
  Date: Thu, 20 Apr 2017 19:40:41 GMT
  Content-Length: 1293
  Content-Type: text/html
}
我在browser developer工具中看到了上述错误,并且在运行此行时会发生此错误:

hubConnection.Start().Wait();
我非常确定凭据本身是正确的,因为当我在本地运行站点,并输入部署在服务器上的中心url,并为该服务器传递凭据时,我就能够启动hub连接


那么,是什么原因阻止了signer.Net客户端在服务器上进行身份验证,而不是在本地进行身份验证呢?

现在我倾向于这样一种理论,即传递给signer.Net客户端的凭据没有足够的权限。基本上,每次我出现401错误时,我都会在服务器的事件查看器日志中看到一个新的审核失败条目,表示使用的凭据无法登录

有人知道该帐户需要授予哪些权利吗