在VB.NET中,您可以使用System.DirectoryServices
命名空间中的DirectoryEntry
和DirectorySearcher
类来设置AD用户的AccountExpires
属性。以下是一个示例代码:
Imports System.DirectoryServices
Module Module1
Sub Main()
' 设置AD域名和用户名
Dim domainName As String = "yourdomain.com"
Dim userName As String = "username"
' 设置AD用户的AccountExpires属性
SetAccountExpires(domainName, userName)
End Sub
Sub SetAccountExpires(ByVal domainName As String, ByVal userName As String)
' 设置AD用户的AccountExpires属性
Try
' 创建DirectoryEntry对象
Dim de As New DirectoryEntry("LDAP://" & domainName)
' 创建DirectorySearcher对象
Dim ds As New DirectorySearcher(de)
' 设置DirectorySearcher的搜索条件
ds.Filter = "(&(objectCategory=person)(objectClass=user)(sAMAccountName=" & userName & "))"
' 搜索AD用户
Dim result As SearchResult = ds.FindOne()
' 如果找到了AD用户
If result IsNot Nothing Then
' 获取AD用户的DirectoryEntry对象
Dim userEntry As DirectoryEntry = result.GetDirectoryEntry()
' 设置AccountExpires属性
userEntry.Properties("AccountExpirationDate").Value = 0
' 保存更改
userEntry.CommitChanges()
' 关闭DirectoryEntry对象
userEntry.Close()
Console.WriteLine("AccountExpires属性已成功设置为永不过期。")
Else
Console.WriteLine("找不到指定的AD用户。")
End If
Catch ex As Exception
Console.WriteLine("发生异常:" & ex.Message)
End Try
End Sub
End Module
在这个示例中,我们首先设置了AD域名和用户名,然后使用DirectoryEntry
和DirectorySearcher
类搜索AD用户。如果找到了AD用户,我们将使用AccountExpirationDate
属性将其设置为永不过期。最后,我们将保存更改并关闭DirectoryEntry
对象。
请注意,您需要在运行此代码之前安装.NET Framework 3.5或更高版本,并且您需要具有足够的权限来修改AD用户的AccountExpires
属性。
领取专属 10元无门槛券
手把手带您无忧上云