【发布时间】:2016-02-19 02:36:32
【问题描述】:
我尝试像下面那样做,得到 “服务器不愿意处理请求。”因为这条线异常“由调用的目标抛出”来自这个newUser.Invoke("Put", new object[] { "userAccountControl", "512" }); 我评论了它,它的工作,但发现新的newUser.Invoke("SetPassword", new object[] { model.Password });
在此之前我使用window server 2003R2(VM) 到Active Directory 没有问题。现在我用window server 2012R2有问题,为什么?
ConnectAD con = new ConnectAD();
DirectoryEntry de = con.GetConnection();
Utility ut = new Utility();
using (DirectorySearcher searcher = new DirectorySearcher(de))
{
searcher.Filter = string.Format("(&(objectClass=user)(sAMAccountName={0}))", model.UserName);
using (SearchResultCollection resultUser = searcher.FindAll())
{
bool DoesExistUsesr = resultUser.Count > 0;
if (!DoesExistUsesr)
{//User doesn't exist
searcher.Filter = string.Format("(&(objectClass=organizationalUnit)(ou={0}))", model.Group);
using (SearchResultCollection resultOU = searcher.FindAll())
{
bool DoesExistOU = resultOU.Count > 0;
if (DoesExistOU)
{//OU does exist
de.Path = ut.SetChildPath("OU=" + model.Group);//"LDAP://" + Properties.Settings.Default.domainMyAD + "/" + "OU=" + model.Group + "," + Properties.Settings.Default.pathMyAD;
DirectoryEntry newUser = de.Children.Add("CN=" + model.UserName, "user");
newUser.Properties["displayName"].Value = model.Name + " " + model.Surname;
newUser.Properties["givenName"].Value = model.Name;
newUser.Properties["sn"].Value = model.Surname;
newUser.Properties["mail"].Value = model.Email;
newUser.Properties["department"].Value = model.Department;
newUser.Properties["title"].Value = model.Title;
newUser.Properties["userPrincipalName"].Value = model.UserName + "@" + Properties.Settings.Default.domainMyAD;
newUser.Properties["sAMAccountname"].Value = model.UserName;
newUser.Properties["PwdLastSet"].Value = -1;
newUser.CommitChanges();
newUser.Invoke("SetPassword", new object[] { model.Password }); //<-- ***thrown by the target of an invocation***
newUser.Invoke("Put", new object[] { "userAccountControl", "512" });
newUser.CommitChanges();
}....
提前致谢。
内部异常:密码不符合密码策略要求。检查最小密码长度, 密码复杂性和密码历史要求 - 错误代码:800708c5
【问题讨论】:
标签: c# visual-studio-2013 active-directory