我已经尝试搜索堆栈溢出一段时间来回答我的问题,但没有成功。
我有一个带有 Windows 身份验证的 asp.net mvc3 应用程序。
由于日志记录,我们必须在访问应用程序时知道谁在使用该应用程序,因此当用户进入页面时会收到一个典型的登录对话框提示,这样我们就可以看到谁在使用该应用程序。
当用户输入他/她的 NT 日志记录详细信息时,系统会接受他们的凭据并让他们使用该页面。我们从 Active Directory 中获取有关用户的不同信息。
该页面位于 Intranet 上,并且正在从登录了该网页拒绝的域的计算机访问,这就是当用户第一次进入该页面时我们得到提示的方式,然后用户输入他/她的 NT 详细信息为之前提到。
我的问题是,当用户尝试从计算机登录时,系统有时会一直拒绝用户。
我已经检查了所有不同的东西,例如匿名识别等等,它们根本不应该有任何问题。
我需要一个地方,我可能可以看到一些事件或其他一些关于它们被拒绝的原因的日志。
这是检查角色的方式:
public class FinancialReportController : BaseEmployeeController
{
.
[AuthorizeAllExceptShop]
public class BaseEmployeeController : Controller
{
}
.
public class AuthorizeAllExceptShop : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
return !httpContext.User.IsInRole(Constants.Roles.SHOP);
}
}
.
public static class Constants
{
public static class Roles
{
public const string SHOP = @"INTERNAL\XP_ShopUsers_DK";
}
我的网络配置有这一行:
<authentication mode="Windows"></authentication>