添加ASP.. NET模拟用户对特定域进行windows身份验证
本文关键字:windows 身份验证 NET ASP 模拟 用户 添加 | 更新日期: 2023-09-27 18:11:09
我在公司的windows server 2008 (IIS 7.5)中安装了MVC4应用程序。为了远程访问windows服务器,我们使用(xxxxDMZ'用户名,密码),这与访问网站特定页面所需的windows身份验证相同。我的问题是不是每个人都有这个"xxxxDMZ"帐户,所以他们无法访问该页面,我要做的是添加他们的windows登录凭据来访问该页面(仅添加用户名),这将是'xxxx'用户名'。
我读到,为了做到这一点,我必须使用模拟,但我找不到明确的方法来实现它。
感谢您的帮助。
提前非常感谢!
这里有一个可以使用的函数。但是Domain需要可以从DMZ访问……这意味着打开DMZ和域控制器之间的端口。
public bool ValidateUser(string userName, string password)
{
bool validation;
try
{
LdapConnection ldc = new LdapConnection(new LdapDirectoryIdentifier((string)null, false, false));
NetworkCredential nc = new NetworkCredential(userName, password, "DOMAIN NAME HERE");
ldc.Credential = nc;
ldc.AuthType = AuthType.Negotiate;
ldc.Bind(nc); // user has authenticated at this point, as the credentials were used to login to the dc.
validation = true;
}
catch (LdapException)
{
validation = false;
}
return validation;
}
ref: LDAP Authentication in ASP。净MVC