Set-AdUser: modificar usuarios de Active Directory con PowerShell
Muy a menudo, el administrador tiene que actualizar las propiedades del usuario de Active Directory manualmente. Este proceso puede llevar mucho tiempo. El módulo PowerShell Active Directory proporciona el cmdlet Set-AdUser para modificar los atributos del usuario del directorio activo.
El cmdlet Set-AdUser modifica los atributos de usuario del directorio activo. Nos permite modificar propiedades de usuario de uso común mediante parámetros de cmdlet. Parámetro de identidad para que un usuario específico del directorio activo modifique las propiedades.
Puede identificar a un usuario por GUID, nombre distinguido, nombre de cuenta SAMA e identificador de seguridad (SID). Puede utilizar el cmdlet Get-AdUser para recuperar objetos de usuario y pasar objetos a través del operador de canalización (|) al cmdlet Set-AdUser para modificar los atributos de usuario.
Requisitos previos
El cmdlet Set-AdUser es uno de los cmdlets de Active Directory. Para utilizar el cmdlet set-aduser, el sistema debe tener los siguientes requisitos:
- Módulo PowerShell
ActiveDirectorya instalar - Usuario con acceso de administrador o con acceso suficiente para leer información de Active Directory.
Consejo: Para saber qué módulos están disponibles en el sistema, ejecute el siguiente comando en PowerShell ISE
Get-Module -ListAvailable
Este comando devuelve todos los módulos instalados y disponibles en el sistema. Si el módulo Active Directory no está disponible, siga los pasos de instalación de Active Directory.
Sintaxis
El cmdlet Set-AdUser modifica las propiedades de un usuario del directorio activo
Set-ADUser
[-WhatIf]
[-Confirm]
[-AccountExpirationDate <DateTime>]
[-AccountNotDelegated <Boolean>]
[-Add <Hashtable>]
[-AllowReversiblePasswordEncryption <Boolean>]
[-AuthenticationPolicy <ADAuthenticationPolicy>]
[-AuthenticationPolicySilo <ADAuthenticationPolicySilo>]
[-AuthType <ADAuthType>]
[-CannotChangePassword <Boolean>]
[-Certificates <Hashtable>]
[-ChangePasswordAtLogon <Boolean>]
[-City <String>]
[-Clear <String[]>]
[-Company <String>]
[-CompoundIdentitySupported <Boolean>]
[-Country <String>]
[-Credential <PSCredential>]
[-Department <String>]
[-Description <String>]
[-DisplayName <String>]
[-Division <String>]
[-EmailAddress <String>]
[-EmployeeID <String>]
[-EmployeeNumber <String>]
[-Enabled <Boolean>]
[-Fax <String>]
[-GivenName <String>]
[-HomeDirectory <String>]
[-HomeDrive <String>]
[-HomePage <String>]
[-HomePhone <String>]
[-Identity] <ADUser>
[-Initials <String>]
[-KerberosEncryptionType <ADKerberosEncryptionType>]
[-LogonWorkstations <String>]
[-Manager <ADUser>]
[-MobilePhone <String>]
[-Office <String>]
[-OfficePhone <String>]
[-Organization <String>]
[-OtherName <String>]
[-Partition <String>]
[-PassThru]
[-PasswordNeverExpires <Boolean>]
[-PasswordNotRequired <Boolean>]
[-POBox <String>]
[-PostalCode <String>]
[-PrincipalsAllowedToDelegateToAccount <ADPrincipal[]>]
[-ProfilePath <String>]
[-Remove <Hashtable>]
[-Replace <Hashtable>]
[-SamAccountName <String>]
[-ScriptPath <String>]
[-Server <String>]
[-ServicePrincipalNames <Hashtable>]
[-SmartcardLogonRequired <Boolean>]
[-State <String>]
[-StreetAddress <String>]
[-Surname <String>]
[-Title <String>]
[-TrustedForDelegation <Boolean>]
[-UserPrincipalName <String>]
[<CommonParameters>]Ejemplos de usuario de Set-AD
Veamos a continuación ejemplos de Set-AdUser para configurar atributos de usuario, dirección de correo electrónico, administrador de usuario, etc.
Uso de Set-Aduser para configurar la dirección de correo electrónico del usuario ad
Si desea configurar la dirección de correo electrónico del usuario del directorio activo, use el cmdlet Set-AdUser de PowerShell para actualizar el atributo EmailAddress de aduser.
Set-ADUser -Identity smith -EmailAddress '[email 'En el ejemplo anterior, el comando Set-ADUser actualiza la dirección de correo electrónico del usuario "smith" en la cuenta del directorio activo.
Utiliza el parámetro Set-ADUser -Identity para identificar al usuario según un nombre distintivo.
Consejo interesante: ¡Obtenga una dirección de correo electrónico usando Get-ADUser en PowerShell!
Establecer el puesto de trabajo y el departamento del usuario del directorio activo
Set-ADUser -Identity "smith" -Department "Asia_Sales" -Title "Manager"En el ejemplo anterior, el comando Set-ADUser establece las propiedades del trabajo, título y departamento para el objeto de usuario con el nombre de cuenta SAM smith.
Establecer la propiedad HomePage del usuario del directorio activo
Set-ADUser smith -HomePage 'https://shellgeek.com/powershell/' -LogonWorkstations 'it-20-dekstop,it-20-laptop'En el ejemplo anterior, el comando Set-ADUser actualiza la propiedad HomePage del usuario Smith de la cuenta SAM a https://shellgeek.com/powershell/ y la propiedad LogonWorkstations a it-20-dekstop. y it-20-portátil
Obtenga la propiedad AD User y set-aduser manager
Consideremos un ejemplo para configurar al usuario Smith como administrador. Set-AdUser tiene un atributo de administrador que se utiliza para configurar el administrador de usuarios del directorio activo.
Get-ADUser -Identity "Smith" | Set-ADUser -Manager "JohnKelly"
En el ejemplo anterior, obtiene al usuario del directorio activo Smith usando PowerShell Get-ADUser y pasa a través del objeto de usuario al cmdlet Set-ADUser de PowerShell para actualizar la propiedad Manager . Puede obtener un usuario publicitario utilizando userprincipalname o upn.
Atributos de PowerShell Set-AdUser para múltiples usuarios
Get-ADUser -Filter 'Name -like "*"' -SearchBase 'OU=Sales,OU=UserAccounts,DC=shellgeek,DC=COM' -Properties DisplayName | % {Set-ADUser $_ -DisplayName ($_.Surname + ' ' + $_.GivenName)}En el ejemplo anterior, el cmdlet Get-ADUser obtiene una lista de todos los usuarios que se encuentran en la unidad organizativa OU=Sales,OU=UserAccounts,DC=shellgeek,DC=COM.
El cmdlet Set-ADUser de PowerShell actualiza la propiedad DisplayName en objetos de usuario a la concatenación de la propiedad Surname y la propiedad GivenName.
PowerShell Establecer atributos de usuarios de anuncios desde csv
Consideremos un ejemplo, para actualizar múltiples atributos del usuario de AD, como el título del usuario del anuncio y el departamento desde el archivo CSV, ejecute el siguiente comando
Import-Module ActiveDirectory
$users = Import-csv -Path c:\powershell\ad_users.csv
foreach ($user in $users) {
Get-ADUser -Filter "employeeID -eq '$($user.employeeID)'" -Properties * -SearchBase "OU=Asia_Sales,dc=shellgeek,dc=com" |Set-ADUser -department $($user.department) -title $($user.title)
}En el ejemplo anterior, el archivo ad_users.csv contiene el ID del empleado, el título y el departamento. Usuario Import-CSV para leer el archivo CSV y almacenar los datos del archivo en la variable $users.
Itere sobre $user para obtener el usuario del directorio activo en una unidad organizativa específica utilizando el cmdlet Get-AdUser. Utilice el objeto de usuario empleado recuperado y la canalización de paso (|) al cmdlet Set-AdUser para actualizar el departamento y el título.
Consejo interesante: aprenda cómo obtener atributos de usuario de anuncios desde csv usando el cmdlet Get-ADUser
Set-ADUser Reemplazar para establecer propiedades
PowerShell Set-ADUser reemplaza los valores específicos de una propiedad de objeto con los valores actuales. Utilice el nombre para mostrar LDAP para modificar la propiedad del objeto. Puede utilizar Reemplazo de Set-ADUser para actualizar varios valores de atributos.
Consideremos un caso para actualizar el título y la dirección de correo electrónico de un empleado, usando set-ADuser replace, podemos hacerlo de la siguiente manera
Set-ADUser -Identity Smith -Replace @{title="manager";mail="[email "}Este comando actualiza el título de usuario de Smith como administrador y la dirección de correo electrónico a [email
Set-AdUser Nombre de la empresa
Si desea configurar el nombre de la empresa del usuario ad para los usuarios del directorio activo en una unidad organizativa específica, ejecute el siguiente comando
Get-ADUser -SearchBase "OU=SALES,DC=SHELLPRO,DC=LOCAL" -filter * | Set-ADUser -Replace @{company="SHELLGEEK"}Arriba del script de PowerShell, el parámetro Get-AdUser SearchBase obtiene los usuarios del directorio activo en la unidad organizativa especificada y los envía al segundo comando.
El segundo comando usa Set-ADUser para actualizar el nombre de la empresa con el valor proporcionado.
Consejo interesante: ¡Aprenda cómo hacer que el usuario del anuncio utilice userprincipalname o upn en PowerShell!
PowerShell Set-AdUser reemplaza varios atributos
Si desea actualizar varios atributos para el usuario del directorio activo, como el departamento de actualización, el nombre de la empresa, ejecute el siguiente comando
Get-ADUser -SearchBase "OU=SALES,DC=SHELLPRO,DC=LOCAL" -filter * -Properties Department,Company | Set-ADUser -Replace @{Department=101;Company="ShellGeek"}En el script de PowerShell anterior para reemplazar múltiples atributos para el usuario del anuncio, el primer comando obtiene el usuario del anuncio de la unidad organizativa especificada y pasa el resultado al segundo comando.
El segundo comando usa Set-ADUser para reemplazar múltiples atributos como el nombre del departamento y de la empresa.
Ejecute el script para obtener el usuario aduser de la unidad organizativa especificada para verificar el resultado del comando Set-ADUser para reemplazar múltiples atributos como se muestra a continuación
Valor de atributo claro Set-AdUser
Si desea borrar el valor del atributo para la cuenta de usuario publicitario, utilice el parámetro AdUser -Clear para borrar el valor del atributo.
Por ejemplo, considere un ejemplo para borrar el valor del departamento, ejecute el siguiente comando
Get-ADUser -filter * -SearchBase "OU=SALES,DC=SHELLPRO,DC=LOCAL" | Set-AdUser -clear departmentEn el script de PowerShell anterior, el cmdlet Get-Aduser obtiene el usuario de la unidad organizativa especificada y pasa el resultado al segundo comando.
El segundo comando usa Set-ADUser para borrar los valores de los atributos.
El resultado del comando anterior después de ejecutar el comando get ad user como se muestra a continuación
La imagen de arriba muestra el valor del atributo clear set-aduser del departamento para los usuarios de la unidad organizativa especificada.
Consejo interesante: ¡Aprenda a consultar la información de los usuarios del directorio activo!
Set-AdUser Desactivar cuenta
Como administrador, debemos controlar las cuentas de usuario activas y las cuentas que ya no están en uso. Cuando un empleado deja una organización, debemos deshabilitar el usuario del directorio activo.
Tomemos un ejemplo para utilizar el escenario de desactivación de cuenta set-aduser para el empleado Don que abandona una organización.
Primero, usaremos el cmdlet Get-AdUser para habilitar o deshabilitar el estado de la cuenta del usuario publicitario.
Si el atributo Get-AdUser Enabled tiene un valor True, significa que la cuenta está activa, el valor False significa que la cuenta está deshabilitada.
Get-ADUser -Identity Don -Properties Enabled | Select EnabledSalida del comando anterior sobre el estado habilitado del usuario del anuncio como se muestra a continuación
PS C:\Windows\system32> Get-ADUser -Identity Don -Properties Enabled | Select Enabled
Enabled
-------
TrueAhora, después de que el usuario abandone la organización, debemos actualizar el estado de su directorio activo a deshabilitado. Usando el cmdlet Set-AdUser deshabilitaremos la cuenta como se muestra a continuación
Get-ADUser -Identity Don -Properties Enabled | Set-ADUser -Enabled $FalseEn el script de PowerShell anterior, el primer comando obtiene el estado habilitado para el usuario para el objeto de usuario y pasa el resultado al segundo comando.
El segundo comando usa Set-ADUser para deshabilitar la cuenta de usuario usando Enable=False.
El resultado del comando anterior de PowerShell Set-ADUser Disabled account, después de verificar el estado del usuario como se muestra a continuación
Sabes: ¡Cómo usar el comando cat en Windows usando PowerShell!
Preguntas frecuentes sobre Powershell Set-AdUser
¿Qué es Powershell Set-AdUser?
El cmdlet Set-AdUser modifica los atributos de usuario del directorio activo. Nos permite modificar propiedades de usuario de uso común mediante parámetros de cmdlet.
¿Cómo configurar atributos personalizados en Active Directory?
Con los parámetros Set-Aduser -add,-replace y -remove de PowerShell, puede establecer atributos personalizados en el directorio activo.
¿Cómo utilizar Set-AdUser para modificar el número de móvil del atributo de Active Directory?
Usando PowerShell Set-AdUser properties -MobilePhone, puede modificar fácilmente el número de teléfono móvil. Ejecute el siguiente comando
Set-ADUser -Identity Tom.Smith -MobilePhone 01777896453
El comando anterior, Set-Aduser modificará Tom.Smith teléfono móvil del usuario.
o también puede usar la propiedad Set-AdUser replace para modificar el número de teléfono como se muestra a continuación
Set-ADUser Tom.Smith -replace @{'MobilePhone'=01777896453 }
Conclusión
En este artículo, analizamos uno de los potentes PowerShell Set-ADUser para actualizar los atributos de usuario del directorio activo con diferentes ejemplos.
Get-ADUser para obtener uno o más objetos de usuario específicos y usar objetos para actualizar múltiples atributos mediante el cmdlet Set-AdUser de PowerShell.
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.


