Estou tentando ler o tempo de expiração da senha do administrador em ActiveDirectory
:
Dim DC = New PrincipalContext(ContextType.Domain)
Dim cmp = ComputerPrincipal.FindByIdentity(DC, hostnm)
Dim desting As String = cmp.DistinguishedName
Dim de As New DirectoryEntry("LDAP://" & desting)
pwdexp = de.Properties("ms-Mcs-AdmPwdExpirationTime").Value.ToString()
Mas o que eu vejo é apenas <COM Type>
:
No entanto, o tempo de expiração da senha do administrador pode ser facilmente lido pelo PowerShell :
$TestValue = [adsi]"LDAP://CN=xxx,OU=xxx,OU=xxx,OU=xxx,OU=xxx,DC=xxx,DC=xxx,DC=xx"
$TestValue.ConvertLargeIntegerToInt64($Testvalue."ms-Mcs-AdmPwdExpirationTime"[0])
E eu sei que existe essa propriedade:
Curiosamente, mas posso ler outro parâmetro ms-Mcs-AdmPwd
:
Dim DC = New PrincipalContext(ContextType.Domain)
Dim cmp = ComputerPrincipal.FindByIdentity(DC, hostnm)
Dim desting As String = cmp.DistinguishedName
Dim de As New DirectoryEntry("LDAP://" & desting)
pwdexp = de.Properties("ms-Mcs-AdmPwdExpirationTime").Value.ToString()
e o valor pode ser visto no depurador:
Como ler uma propriedade ms-Mcs-AdmPwdExpirationTime
corretamente?
powershell
active-directory
vb.net
Um passo adiante
fonte
fonte
net user /domain administrator
assim e ver o valor do campo Expirar senha .Respostas:
Isso funciona para mim no PowerShell:
boa sorte Sem
fonte
fonte