有没有办法使用电子邮件字段(和密码,确定)对AD进行身份验证?我在服务器上设置了sAMAccountName和电子邮件,但我必须使用mail而不是sAMAccountName进行验证。
我正在使用以下代码使用sAMAccountName进行身份验证(顺便说一句,这是一个类库)。
using (PrincipalContext pc = new PrincipalContext(ContextType.Domain, DOMINIO))
{
return pc.ValidateCredentials(sAMAccountName, Password);
}
答案 0 :(得分:1)
如果您在每个用户上设置了UPN(用户主体名称)并且与电子邮件地址相同,则应该可以立即使用它。 UPN通常采用firstname.lastname@domain
形式。默认情况下,使用活动目录的域名,这通常是内部的(例如,提供UPN anders.abel@company.local
)。通常可以注册新的UPN后缀并将用户的电子邮件地址设置为UPN而不会破坏任何内容。
否则,您应该能够使用服务帐户附加到AD,根据电子邮件字段搜索正确的用户对象,检索sAMAccountName并使用该帐户登录。