【发布时间】:2016-09-03 04:48:19
【问题描述】:
我在 SignalR 与 Win Auth 的连接中遇到问题。当我在 IIS 授权设置中启用匿名时,它可以工作,但有时会出现 HTTP 403 Forbidden 错误。经过研究,我发现我需要禁用匿名连接。但是当在 IIS 中禁用和启用 windowsAuth 时,总是会出现 HTTP 401.2 UnAuthorized 错误。如何连接 WinAuth?对于我的项目,我需要使用 WinAuth。
Not1:我使用的是 Silverlight 5。
Not2:我已经在 StackOverflow 上尝试过可能的解决方案,但都没有奏效。
那么为什么我不能使用 WinAuth?它在配置文件、IIS 设置以及我的 web.config 中随处启用。
我花了 2 天时间,但仍然找不到解决方案。如果您需要更多信息,请写评论。我不确定我还能分享什么信息。我不想在这里放很多不必要的文字。
编辑: 当我使用此代码时,即如果我明确输入用户名和密码,则它可以工作。 Internet Explorer 首先使用匿名身份验证,然后失败,然后直接使用 NetworkCredentials。这是代码
hubConnection = new HubConnection("URL");
hub = hubConnection.CreateHubProxy("HUBNAME");
hubConnection.Credentials = new System.Net.NetworkCredential("ID", "PASSWORD");
(大写字母是我的应用程序特有的。)
那么如何为我的 Silverlight 应用程序获取 Windows 凭据? DefaultCredentials 不适用于 silverlight。
【问题讨论】:
标签: asp.net .net silverlight iis signalr