我正在尝试使用VB.NET可执行文件在AD中设置扩展属性的值。我扩展了UserPrincipal
类来完成此操作,但是现在出现错误
服务器不愿意处理请求
当我尝试设置扩展属性时。
我可以从AD中的现有用户那里获得该属性,而不会出现任何错误,并且当我尝试创建和保存没有扩展类的用户时,它会起作用。
Dim stringDomainName As String = System.Net.NetworkInformation.IPGlobalProperties.GetIPGlobalProperties().DomainName
Dim objPrincipalContext As New PrincipalContext(ContextType.Domain, stringDomainName, DirectoryPath, ContextOptions.SimpleBind, DomainUsername, DomainPassword)
Dim objUserPrincipal As New UPExtention(objPrincipalContext, sUserName, sPassword, True)
Dim expDate As Date
'Set Name
objUserPrincipal.Name = sFirstName & " " & sLastName
'Set First Name
objUserPrincipal.GivenName = sFirstName
'Set Last Name
objUserPrincipal.Surname = sLastName
'Set Display Name
objUserPrincipal.DisplayName = sLastName & ", " & sFirstName
'Enable Account
objUserPrincipal.Enabled = True
objUserPrincipal.extentionAttribute15 = sUserName
'Save the created user
objUserPrincipal.Save(objPrincipalContext)
答案 0 :(得分:0)
我不确定100%导致错误的原因,但是我回到了使用未扩展的UserPrincipal类创建初始对象并保存它而未设置扩展属性的情况。然后,我创建了扩展UserPrincipal的对象,并使用重载的FindByIdentity函数获取刚创建的用户,然后设置扩展属性并再次保存。现在可以了!