asp.net - 身份验证类型协商与 NTLM

标签 asp.net iis

我在同一服务器 (IIS 7.5) 上托管的 2 个不同站点上使用了相同的代码库。

出于某种原因,当我检查 http 处理程序后面的代码上的 Identity.AuthenticationType 属性时,我看到 1 个站点为 NTLM,而另一个站点为 Negotiate。这导致了一些问题,我需要它们都使用 NTLM。

你能帮我找出为什么会出现这种差异吗?到目前为止,我看到两个 IIS 站点的配置方式相同,但当然至少有 1 个我无法检测到的差异。 谢谢!

编辑
我用过this提供从 IIS 中删除“协商”提供程序的说明的链接。这对我不起作用。我执行了

appcmd.exe set config "Contoso" -section:system.webServer/security/authentication/windowsAuthentication /-"providers.[value='Negotiate']" /commit:apphost

也许我做错了什么,但没有帮助。我仍然将“Negotiate”视为 AuthenticationType

我遇到的问题是我正在设置 web.config 模拟凭据,但它没有使用它们。它不使用我提供的凭据,而是使用匿名用户。

奇怪的是 windowsAuthentication 被禁用。我以为“Negotiate”仅由 windowsAuthentication 使用。

最佳答案

Negotiate 将在内部选择 Ntlm 或 Kerberos 身份验证。 如果站点显示 Ntlm,则仅选择 Ntlm 身份验证。 请检查两个站点并确保身份验证相同。

关于asp.net - 身份验证类型协商与 NTLM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4647492/

相关文章:

c# - IIS 8.0 HTTP 错误 404.17 - 未找到请求的内容似乎是脚本,不会由静态文件处理程序提供服务

IIS 重写以删除某些查询字符串参数并重定向到原始请求的主机

c# - 如何在 IIS 托管的 WCF 应用程序上执行一些初始启动代码?

asp.net - ASP .NET 响应内容被切断 - 奇怪的错误

c# - Code First ASP.NET MVC 应用程序,未调用种子方法

css - 如何对齐多个单选按钮列表?

c# - ASP.NET 和 IIS 7 - 登录后 IE10 中出现意外 URL

c# - 如何配置 MYSQL ODBC 驱动程序以与 Visual Studio 2013 一起使用?

javascript - asp.net 数据输入静态网格

jquery - 如果放入 .js 文件,ul id 不会触发