gpt4 book ai didi

asp.net-mvc-3 - 为什么我的 MVC3 Intranet 站点 Windows 身份验证在发布时不起作用

转载 作者:行者123 更新时间:2023-12-04 14:49:30 30 4
gpt4 key购买 nike

我们在 MVC3 和 Entity Framework 中有一个简单的 Intranet 站点。一切正常,可以在 Visual Studio 的调试中运行。当我将站点发布到本地机器 IIS7.5 网络服务器或同一域上的开发盒时,系统会提示我输入用户名和密码,但它不会连接到该站点。它只是返回一个 401.1 错误并奇怪地显示

Logon Method Not yet determined 
Logon User Not yet determined

我已验证启用了 Windows 身份验证并禁用了匿名身份验证。该应用程序正在使用 applicationPoolIdentity 但我已经尝试使用网络服务,没有任何区别。网络配置包括
<authentication mode="Windows" />

我已经尝试过,有无授权部分。
<authorization>
<allow users="*" />
</authorization>

我在网上发现的唯一另一件事涉及更改注册表项,但这最终将在生产服务器上,所以我不喜欢仅仅为此进行注册表更改。

使用此代码块在本地运行会返回所有预期信息
<div id="title">
<h4> Environment.UserName: @Environment.UserName
@DateTime.Now.Millisecond.ToString() </h4>
@foreach (var role in Roles.GetRolesForUser())
{
role.ToString(); <br />
}
</div>
<div id="logindisplay">
Context.User.Identity.Name <strong>@Context.User.Identity.Name</strong>!<br />
@Environment.UserDomainName
</div>

它是一个 MVC3 Web 应用程序。 IIS 身份验证开关是
Anonymous Authentication     Disabled
ASP.NET Impersonation Disabled
Forms Authentication Disabled
Windows Authentication Enabled

我还缺少任何其他想法或东西吗?

最佳答案

MSDN 上的这篇文章说明了如何设置 IIS 7 MVC3 Intranet 网站:
http://msdn.microsoft.com/en-us/library/gg703322(VS.98).aspx

与您相关的有趣文章很可能是关于模仿的最后一部分。如果您将站点作为 Windows 身份验证运行但关闭了模拟,您将使用经过身份验证的身份读取/执行网站的文件。这意味着每个想要访问该站点的用户都需要文件夹/文件权限。

为避免这种情况,请使用 Windows Auth 允许用户进行身份验证,但使用 Impersonation 使用单一身份访问文件夹/文件。

关于asp.net-mvc-3 - 为什么我的 MVC3 Intranet 站点 Windows 身份验证在发布时不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9104748/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com