我创建了一个小型应用程序,它尝试根据用户名和密码对用户进行身份验证。此应用程序在 Active Directory 所在的同一域上运行时可以正常工作。
我现在必须扩展应用程序,使其也可以在安全和权限方面“关闭”的域上工作。换句话说,有没有办法基于管理员帐户或具有访问 Active Directory 所需权限的帐户来运行应用程序?
这是我用来验证用户的代码:
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, server + ":" + port))
{
if (pc.ValidateCredentials(username, password))
{
valid = true;
}
else
{
valid = false;
}
}
上面的代码可以完美运行,但是我想对其进行修改,以便它可以以经过身份验证的方式与 Active Directory 数据库进行通信。
我已经阅读了许多文档和资源,但没有找到任何东西。我发现的关闭是一篇文章,提到必须以特定方式设置和配置 IIS。但是,我的应用程序是一个简单的 C# 应用程序,并且没有使用 IIS。