Agregar usuarios al grupo AD mediante el cmdlet Add-ADGroupMember
Agregar usuarios a grupos de Active Directory (AD) es una tarea común para los administradores de sistemas. Si la tarea involucra solo a uno o dos usuarios, a menudo optan por utilizar Usuarios y computadoras de Active Directory (ADUC) o el Centro administrativo de Active Directory (ADAC). Pero cuando el trabajo involucra a más usuarios, PowerShell es una opción mucho más eficiente. Este artículo explica cómo agregar un usuario al cmdlet de PowerShell del grupo AD, Add-ADGroupMember.
Agregar miembro de grupo AD
Para agregar usuarios a un grupo, PowerShell ofrece el cmdlet Add-ADGroupMember.
Sintaxis
La sintaxis del cmdlet Add-ADGroupMember es la siguiente:
Add-ADGroupMember [-WhatIf] [-Confirm] [-AuthType ] [-Credential ] [-Identity] [-Members] <ADPrincipal[]> [-MemberTimeToLive ] [-Partition ] [-PassThru] [-Server ] [-DisablePermissiveModify]Parámetros
El cmdlet Add-ADGroupMember tiene los siguientes parámetros:
- Parameter
Descripción
- -Identity
-
Utilice este parámetro para especificar el grupo AD al que desea agregar los nuevos miembros. Puede especificar el grupo utilizando su nombre distintivo (DN), identificador único global (GUID), identificador de seguridad (SID) o nombre del administrador de cuentas de seguridad (SAM). También puedes pasar en el grupo a través de una tubería.
- -Members
Utilice este parámetro para especificar los usuarios, cuentas de servicio, computadoras o grupos que se agregarán como miembros del grupo. Identifique a cada miembro por su nombre DN, SID, GUID o SAM. Para especificar varios miembros, utilice la coma como separador. Tenga en cuenta que los objetos de usuario, grupo y computadora no pueden pasar a través de una canalización. Si desea utilizar una canalización, puede utilizar el cmdlet Add?ADPrincipalGroupMembership en su lugar.
- -WhatIf
Utilice este parámetro si desea ver qué haría el cmdlet de PowerShell para agregar usuarios al grupo, sin ejecutarlo realmente.
- -Confirm
Utilice este parámetro si desea recibir un mensaje de confirmación antes de que se ejecute el cmdlet.
- -AuthType
Utilice este parámetro para especificar el tipo de autenticación: Básica o Negociar.
- -Credential
Utilice este parámetro si necesita proporcionar credenciales alternativas.
- -MemberTimeToLive
Utilice este parámetro para proporcionar un período de tiempo específico para que el objeto siga siendo miembro del grupo.
- -Partition
Utilice este parámetro para especificar el DN de la partición de Active Directory en la que el cmdlet debe buscar el grupo especificado en el parámetro Identidad.
- -PassThru
Utilice este parámetro para devolver el objeto que se modifica. (De forma predeterminada, el cmdlet Add-ADGroupMember no genera ningún resultado).
- -Server
Utilice este parámetro para especificar la instancia de Active Directory a la que conectarse. Puede proporcionar el nombre de dominio o el servidor de directorio.
- -DisablePermissiveModify
-
Utilice este parámetro para evitar que el cmdlet genere un error si el usuario ya es miembro del grupo especificado.
Casos de uso comunes
Agregar un único usuario a un grupo de AD
Para agregar "Jason-Bourne" al grupo "The Office", utilice el siguiente cmdlet de PowerShell:
Add-ADGroupMember -Identity "The Office" -Members Jason-BourneEste comando de PowerShell para agregar miembro del grupo no generará ningún resultado, así que ejecutemos el siguiente comando para verificar que la membresía del grupo se haya actualizado correctamente:
Get-ADGroupMember -Identity "The Office" | ftAgregar varios usuarios a un grupo de AD
Para agregar varios usuarios a un grupo, sepárelos con comas:
Add-ADGroupMember "The Office" Jason-Bourne,Benedict.Cumberbatch,AbbeyCrawford,AbbeyEckelsConfirmemos los resultados de este comando de PowerShell para agregar usuarios al grupo:
Get-ADGroupMember -Identity "The Office" | ftCopiar miembros del grupo a otro grupo
A veces es posible que necesites obtener una lista de los miembros de un grupo y agregar esos usuarios a otro grupo. Por ejemplo, hagamos que todos los usuarios del grupo "La Oficina" utilicen el cmdlet Get-ADGroupMember y usemos una canalización y un bucle ForEach para pasar esos objetos a Add-ADGroupMember, que los agregará al grupo "Trabajar desde casa". ":
Get-ADGroupMember “The Office” | Get-ADUser | ForEach-Object {Add-ADGroupMember -Identity “Work from home” -Members $_}Para ver la membresía de ambos grupos, use los siguientes cmdlets:
Get-ADGroupMember -Identity "The Office" | ftGet-ADGroupMember -Identity "Work from home" | ftAgregar todos los usuarios de una unidad organizativa específica
De manera similar, es posible que necesite agregar todos los usuarios de una unidad organizativa (OU) particular a un grupo. Por ejemplo, supongamos que tenemos una unidad organizativa llamada Ingeniería con 21 usuarios:
Para agregar estos 21 usuarios al grupo “Usuarios de ingeniería”, podemos usar el siguiente comando:
Get-ADUser -Filter * -SearchBase “OU=Engineering,DC=milkyway,DC=local”| ForEach-Object -process {Add-ADGroupMember -identity "Engineering Users" -Members $_.SamAccountName}Ahora, verifiquemos la membresía del grupo "Usuarios de ingeniería" para asegurarnos de que se hayan agregado todos los usuarios:
Get-ADGroupMember -Identity "Engineering Users" | ftAgregar usuarios según una propiedad de AD
A veces, los usuarios que desea agregar a un grupo no se encuentran convenientemente en una unidad organizativa u otro grupo. Pero si tienen una propiedad AD en común, aún puedes agregarlos todos fácilmente a un grupo. Por ejemplo, el siguiente comando filtrará los usuarios cuyo atributo de departamento esté configurado en Ingeniería y luego los agregará al grupo "Usuarios de ingeniería":
Get-ADUser -filter {(department -eq "Engineering")} | ForEach-Object -process {Add-ADGroupMember -identity "Engineering Users" -Members $_.SamAccountName}Confirmemos los cambios ejecutando el siguiente comando:
Get-ADGroupMember -Identity "Engineering Users" | ftAgregar usuarios a un grupo usando un archivo CSV
Puede agregar miembros a un grupo desde un archivo CSV con una lista de objetos AD. Por ejemplo, su equipo de recursos humanos podría enviarle un archivo CSV con una lista de usuarios que se agregarán a un grupo en particular. Aquí hay un archivo de ejemplo como se vería al abrirlo en Excel:
Aquí está el mismo archivo tal como aparece en el Bloc de notas:
El siguiente comando utiliza el campo "Nombre" para los usuarios enumerados en el archivo CSV en el grupo "Usuarios de ingeniería":
Import-Csv -Path C:\engineeringusers.csv | foreach-object {Add-ADGroupMember -Identity "Engineering Users" -Members $_.Name}Como siempre, verifiquemos los resultados:
Get-ADGroupMember -Identity "Engineering Users" | ftAgregar usuarios a diferentes grupos usando un archivo CSV
Ahora consideremos un escenario más complejo: los usuarios del archivo CSV deben agregarse a diferentes grupos. Para cada usuario, el archivo especifica el grupo al que deben agregarse, como se muestra a continuación:
Para agregar cada usuario al grupo correcto, utilice el siguiente cmdlet:
Import-Csv -Path C:\UsersAndGroups.csv | foreach-object {Add-ADGroupMember -Identity $_.Group -Members $_.Name}Para comprobar los resultados, podemos ejecutar Get-ADGroupMember para cada uno de los 5 grupos en el archivo CSV:
Usar PowerShell para agregar usuarios a grupos de AD es mucho más eficiente que las opciones manuales como ADAC y ADUC. Sin embargo, escribir y mantener guiones requiere habilidades especializadas; sin la suficiente experiencia, puede dar lugar a errores costosos.
Preguntas frecuentes
¿Cómo agrego un grupo de AD?
Para crear un nuevo grupo de AD, puede utilizar el cmdlet New-ADGroup de PowerShell.
¿Cómo agrego miembros a un grupo de AD?
Utilice el cmdlet Agregar usuario al grupo de PowerShell, Add?ADGroupMember. Al agregar varios usuarios, sepárelos con comas.
¿Cómo puedo incluir la membresía del grupo AD?
Para enumerar los miembros de un grupo, ejecute Get-ADGroupMember.










