Búsqueda de sitios web

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 ActiveDirectory a 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 department

En 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 Enabled

Salida 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
-------
   True

Ahora, 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 $False

En 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.

Artículos relacionados