我现在在互联网上搜索了将近 4 天,但我被困住了。
我创建了一个简单的 ASP MVC4 Intranet 网站,并将其部署到名为: 的服务器iis
。那台电脑和我的电脑在同一个域内。
在我的域中,我有 3 台计算机:my_pc
、iis
服务器和sql
服务器。
当我在我的电脑上输入地址http://iis
时,我看到我已正确登录:
这适用于 IE 和 Chrome。<- 到目前为止一切正常!
当我尝试在我的网页 - WebAPI 控制器中执行 sql 查询时,问题就开始了。
在 IE 上我得到正确的结果,但在 Chrome 上我得到错误:
在 Web.config 里面我有需要的配置:
<authentication mode="Windows" />
<identity impersonate="true" />
在 IIS 内部,我禁用了匿名身份验证并启用了 Windows 身份验证。
我的 IIS 被信任将请求委托给我的 SQL 服务器。
最奇怪的部分是,当我尝试打开我的网页(使用 sql 查询)时出现错误,然后当我在 IE 中打开相同的网页(成功)并且我刷新 Chrome 网站时正确加载并工作了一段时间(随机,有时 5 分钟,有时 30 秒)。
我试过向[Authorize]
特定方法添加属性,但这没有帮助。
Chrome 似乎没有将 kerberos 令牌传递给 IIS。
我已经尝试过此处描述的步骤:http: //dev.chromium.org/developers/design-documents/http-authentication但没有任何运气。
有人可以逐步指导我如何配置 Google Chrome 并休息(IIS,SQL,如果需要)以在 Chrome 中使用 Windows 身份验证吗?