Obtenga AdUser con Cambiar contraseña en el próximo inicio de sesión usando PowerShell
El cmdlet Get-AdUser en PowerShell utiliza los atributos PasswordLast o PwdLastSet para obtener cuentas de usuario con una contraseña cambiada en el siguiente inicio de sesión establecido en Active Directory.
El cmdlet Get-AdUser contiene atributos como PasswordLastSet y PwdLastSet; si el valor de cualquiera de estos atributos es "0", significa que la cuenta aduser está configurada para cambiar la contraseña en el siguiente inicio de sesión.
En este artículo, analizaremos cómo utilizar Get-AdUser para que los usuarios cambien sus contraseñas en el próximo inicio de sesión configurado en Active Directory.
Obtenga cuentas de usuario que cambien la contraseña en el próximo inicio de sesión
El cmdlet Get-AdUser recupera la información sobre las cuentas de usuario en el directorio activo. Tiene atributos PasswordLastSet y PwdLastSet que almacenan la información sobre la última contraseña establecida para el usuario.
Si el valor del atributo PasswordLastSet o pwdLast es "0", significa que se le pedirá al usuario que cambie la contraseña en el siguiente inicio de sesión.
Get-ADUser -LDAPFilter "(pwdLastSet=0)" | Select SamAccountName,distinguishedName
En el script de PowerShell anterior, el cmdlet Get-AdUser utiliza el parámetro LDAPFilter para comprobar si el valor del atributo pwdLastSet es igual a 0 y recupera el información de cuentas de usuario.
Utiliza el operador pipeline para pasar las cuentas de usuario al cmdlet Select para mostrar la cuenta de usuario SamAccountName y DistifusedName para el usuario ad que cambiará la contraseña en el siguiente inicio de sesión.
El resultado del script de PowerShell anterior recupera la información de las cuentas de usuario.
Recupere el usuario del anuncio cambiando la contraseña en el siguiente inicio de sesión
Utilice el cmdlet Get-AdUser con el parámetro Filter para comprobar si el valor de los atributos PasswordLastSet o PwdLastSet es igual a 0 .
Get-ADUser -Filter "PasswordLastSet -eq '0' -or PwdLastSet -eq 0" | Select SamAccountName,distinguishedNameEn el script de PowerShell anterior, el cmdlet Get-AdUser tiene un parámetro Filter para verificar si PasswordLast es igual a 0 o PwdLastSet es igual a 0 usando el - operador eq y recupera la cuenta de usuario con una contraseña de cambio en el próximo inicio de sesión.
El resultado del script anterior recupera las cuentas de usuario que necesitan cambiar su contraseña en el siguiente inicio de sesión.
PS C:\> Get-ADUser -Filter "PasswordLastSet -eq '0' -or PwdLastSet -eq 0" | Select SamAccountName,distinguishedName
SamAccountName distinguishedName
-------------- -----------------
Guest CN=Guest,CN=Users,DC=SHELLPRO,DC=LOCAL
Don CN=Don,CN=Users,DC=SHELLPRO,DC=LOCALCompruebe si la cuenta de usuario está configurada para cambiar la contraseña en el próximo inicio de sesión
Utilice el cmdlet Get-AdUser para recuperar la información de la cuenta del usuario publicitario. Recupera una serie de propiedades como SamAccountName, DN, PasswordLastSet y PwdLastSet.
Verifique el valor de los atributos PasswordLastSet y PwdLast; si alguno de los valores del atributo es igual a 0, significa que se le pedirá al usuario que cambie la contraseña en el siguiente inicio de sesión.
En el siguiente script de PowerShell, el cmdlet Get-AdUser recupera la información de la cuenta "Don" del usuario aduser y la almacena en la variable $aduser.
Luego verifica si la propiedad PwdLastSet para el usuario aduser es igual a 0 y almacena el resultado en la variable $changePasswordAtNextLogon.
Si el valor de la variable $changePasswordAtNextLogon es verdadero, imprimirá el mensaje cuando el usuario del anuncio esté configurado para cambiar la contraseña en el próximo inicio de sesión.
# Retrieve the aduser account
$aduser = Get-AdUser -Identity Don -Properties *
# Check if PwdLastSet for aduser
$changePasswordAtNextLogon = $aduser.PwdLastSet -eq 0
# Output
if ($changePasswordAtNextLogon) {
Write-Host "Ad User 'Don' is set to change password at next logon."
}
else {
Write-Host "Ad User 'Don' is not set to change password at next logon."
}Conclusión
Espero que el artículo anterior sobre cómo utilizar el cmdlet Get-AdUser para encontrar las cuentas de usuario configuradas para cambiar su contraseña en el próximo inicio de sesión en Active Directory le resulte útil.
Puede encontrar más temas sobre los comandos de PowerShell Active Directory y los conceptos básicos de PowerShell en la página de inicio de ShellGeek.
