C# 为什么我得到了;访问被拒绝。(HRESULT的例外:0x80070005(E_ACCESSDENIED))“;在Active Directory中创建用户时
我使用以下代码在Active Directory中创建用户C# 为什么我得到了;访问被拒绝。(HRESULT的例外:0x80070005(E_ACCESSDENIED))“;在Active Directory中创建用户时,c#,asp.net,active-directory,C#,Asp.net,Active Directory,我使用以下代码在Active Directory中创建用户 DirectoryEntry newUser = null; try { if (!Authenticate()) return null; newUser = location.Children.Add("CN=" + userName, "user"); newUser.Propertie
DirectoryEntry newUser = null;
try
{
if (!Authenticate()) return null;
newUser = location.Children.Add("CN=" + userName, "user");
newUser.Properties["samAccountName"].Value = userName;
newUser.Properties["cn"].Value = userName;
newUser.CommitChanges();
string guid = newUser.Guid.ToString();
newUser.Invoke("SetPassword", new object[] { password });
newUser.CommitChanges();
DomainDirectoryEntry.Close();
newUser.Close();
return guid;
}
catch
{
throw;
}
finally
{
newUser = null;
}
如果我从asp.net网页运行此代码,它将在Active Directory中创建用户,并将其创建为禁用,但它会引发异常调用目标已引发异常。
当我获取此异常的内部异常时,它会拒绝访问。(HRESULT的例外:0x80070005(E_ACCESSDEN我确信用于访问Active Directory的帐户是一个完整的管理员。)
我没有确定创建用户的原因和原因,但它在设置密码时会产生错误…有什么可以指导我获取错误吗?我想你(应用程序池用户或模拟用户)没有权限这样做
默认情况下,该用户将是网络服务,我确信该用户没有相应的权限
您如何知道您使用哪个帐户访问Active Directory?我尝试了许多方法,最后我们发现当代码从SharePoint运行时会出现问题,因此我们将代码放在下面的代码中,代码成功运行
SPSecurity.RunWithElevatedPrivileges(delegate()
{
......
}
但应用程序池用户是否影响我使用域管理员用户从代码访问active directory。。。