Administrar grupos de distribución mediante PowerShell | Oficina 365
El artículo actual es el primero de una serie de cinco artículos, que está dedicada al tema de la administración del grupo de distribución en un entorno basado en Office 365 y Exchange Online mediante PowerShell.
El propósito de este artículo es proporcionar una "versión reducida" del índice de comandos de PowerShell, que debemos usar para tareas comunes de administración de grupos de distribución.
Para cada sección del artículo, como crear un nuevo grupo de distribución, administrar grupos de distribución existentes y agregar miembros a un grupo de distribución existente, he dedicado artículos separados.
Administrar grupo de distribución usando PowerShell en Office 365 | Serie de artículos
Si la “versión corta” del comando PowerShell no es suficiente para usted y necesita más información o más ejemplos, lo invitamos a leer el artículo específico sobre administración de grupos de distribución a través de la serie de artículos de PowerShell.
La serie de artículos incluye los siguientes artículos:
- Administrar grupos de distribución mediante PowerShell | Office 365 (este artículo)
- Administrar grupo de distribución usando PowerShell en Office 365 | Crear y administrar grupos de distribución
- Administrar grupo de distribución usando PowerShell en Office 365 | Agregar miembros a un grupo de distribución existente
- Administrar grupo de distribución usando PowerShell en Office 365 | ver y exportar información sobre el grupo de distribución
- Administrar grupo de distribución usando PowerShell en Office 365 | Eliminar grupo de distribución y miembros | Convertir grupo de distribución
1. Creación de un nuevo grupo de distribución
En caso de que desees información más detallada sobre la administración de grupos de distribución usando PowerShell y el tema de “Creación de grupos de distribución”, puedes leer el artículo Administrar grupo de distribución usando PowerShell en Office 365 | Creación y gestión de grupos de distribución.
Cree un NUEVO grupo de distribución (use la configuración predeterminada)
Sintaxis del comando de PowerShell:
New-DistributionGroup -Name "<Distribution Group Name>"Ejemplo de comando de PowerShell:
New-DistributionGroup -Name "Sales USA"Crear NUEVO grupo de distribución + establecer configuraciones adicionales del grupo de distribución
Sintaxis del comando de PowerShell:
New-DistributionGroup -Name <Distribution Group name> -DisplayName <DL display name> -Alias <Alias> -PrimarySmtpAddress <Email Address> -ManagedBy <identity>Ejemplo de comando de PowerShell:
New-DistributionGroup -Name "Sales USA" -DisplayName "Sales USA mail list" -Alias "SalesUSA" -PrimarySmtpAddress "SalesUSA@o365info.com" -ManagedBy "Brad"Crear grupos de distribución importando información desde un archivo CSV
Sintaxis del comando de PowerShell:
Import-CSV <Path> | ForEach {New-DistributionGroup -Name $_.name -Type $_.Type}Ejemplo de comando de PowerShell:
Import-CSV "C:\Temp\DL-Group.csv" | ForEach {New-DistributionGroup -Name $_.name -Type $_.Type}Puede descargar los archivos CSV que utilizamos en el artículo con fines de demostración.
2. Administrar la configuración del grupo de distribución existente
En caso de que desee obtener información más detallada sobre la administración de grupos de distribución usando PowerShell y el tema de “Administración de grupos de distribución”, puede leer el artículo Administrar grupo de distribución usando PowerShell en Office 365 | Creación y gestión de grupos de distribución.
Habilite o deshabilite el grupo de distribución para recibir correo electrónico de remitentes externos
Para permitir que el destinatario externo envíe un correo electrónico al grupo de distribución de Exchange Online, configuramos el valor del parámetro "RequireSenderAuthenticationEnabled" en $False.
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group Name>" -RequireSenderAuthenticationEnabled $FalseEjemplo de comando de PowerShell:
Set-DistributionGroup "Sales USA" -RequireSenderAuthenticationEnabled $FalsePermitir que un destinatario externo envíe correo electrónico a todos los grupos de distribución (modo masivo)
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Set-DistributionGroup -RequireSenderAuthenticationEnabled $FalseReemplazar al propietario del grupo de distribución existente
Sintaxis del comando de PowerShell:
Set-DistributionGroup -Identity "<Distribution Group Name>" -ManagedBy <Identity>Ejemplo de comando de PowerShell:
Set-DistributionGroup -Identity "Sales USA" -ManagedBy "Brad" -BypassSecurityGroupManagerCheckAgregar propietarios adicionales al grupo de distribución
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group name>" -ManagedBy @{Add='<Identity 1>','<Identity 2>'}Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales USA" -ManagedBy @{Add='bob','brad'}Establecer la dirección de correo electrónico principal del grupo de distribución
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group name>" -PrimarySmtpAddress <primary E-mail address>Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -PrimarySmtpAddress "SalesUK@o365info.com"Establezca la dirección de correo electrónico principal del grupo de distribución importando información desde un archivo CSV
En nuestro ejemplo, el nombre del archivo CSV es Distribution-Groups-information.csv.
Ejemplo de comando de PowerShell:
$GroupList = Import-CSV "C:\temp\Distribution-Groups-information.csv"
ForEach ($group in $GroupList) {
ForEach ($email in $GroupList) {
}
Set-DistributionGroup -BypassSecurityGroupManagerCheck -Identity $group.GroupName -PrimarySmtpAddress $email.email
}Puede descargar los archivos CSV que utilizamos en el artículo con fines de demostración.
Agregar una dirección de correo electrónico adicional a la dirección de correo electrónico del grupo de distribución existente
Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -emailaddresses @{Add='SalesUK02@o365info.com','SalesUK02@o365info.com','SalesUK02@o365info.com'}Reemplazar (eliminar) el correo electrónico de alias del grupo de distribución existente
Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -emailaddresses 'SalesUK02@o365info.com','SalesUK03@o365info.com'Eliminar direcciones de correo electrónico de alias de grupo de distribución existentes
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group name>" -EmailAddresses @{Remove='<Identity 1>','<Identity 2>'}Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -EmailAddresses @{Remove=' Sales01@o365info.com','Sales02@o365info.com'}Ocultar grupo de distribución de GAL (lista global de direcciones)
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group Name>" -HiddenFromAddressListsEnabled $TrueEjemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -HiddenFromAddressListsEnabled $TrueConfigurar un grupo de distribución existente para aceptar correo electrónico solo de un remitente específico
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group Name>" -AcceptMessagesOnlyFrom <Allowed E-mail address 1>, < Allowed E-mail address 2>Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -AcceptMessagesOnlyFrom Bradp@o365info.com,Angelina@o365info.comDefinir moderador del grupo de distribución
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group Name>" -ModeratedBy <E-mail address>, <E-mail address>Ejemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -ModeratedBy Bradp@o365info.com,Angelina@o365info.comEnviar respuesta de Fuera de la oficina para el grupo de distribución
Sintaxis del comando de PowerShell:
Set-DistributionGroup "<Distribution Group Name>" -SendOofMessageToOriginatorEnabled $TrueEjemplo de comando de PowerShell:
Set-DistributionGroup "Sales UK" -SendOofMessageToOriginatorEnabled $TrueAsignar permisos "Enviar como" al grupo de distribución
Sintaxis del comando de PowerShell:
Add-RecipientPermission "<Distribution Group Name>" -Trustee <Identity> -AccessRights SendAs -Confirm:$FalseEjemplo de comando de PowerShell:
Add-RecipientPermission "Sales UK" -Trustee Brad -AccessRights SendAs -Confirm:$False3. Agregar usuarios al grupo de distribución
En caso de que desee obtener información más detallada sobre la administración del grupo de distribución usando PowerShell y el tema "Agregar miembros al grupo de distribución existente", puede leer el artículo Administrar el grupo de distribución usando PowerShell en Office 365 | Agregar miembros al grupo de distribución existente.
Agregar usuario (destinatario) al grupo de distribución
Sintaxis del comando de PowerShell:
Add-DistributionGroupMember "<Distribution Group Name>" -Member "<Identity>"Ejemplo de comando de PowerShell:
Add-DistributionGroupMember -Identity "Sales UK" -Member "Bradp"Importar miembros del grupo de distribución desde un archivo CSV
Ejemplo de comando de PowerShell:
$Userslist = Import-CSV C:\Temp\Distribution-Groups-Members.csv
ForEach ($User in $Userslist) {
Add-DistributionGroupMember -Identity "Sales France" -Member $User.PrimarySmtpAddress
}Agregar usuario (destinatario) a múltiples grupos de distribución
Sintaxis del comando de PowerShell:
$Variable = "<Distribution Group name>", "<Distribution Group name>", "<Distribution Group name>"
ForEach ($item in $Variable) {
Add-DistributionGroupMember -Identity $item -Member <Identity>
}Agregar al grupo de distribución todos los usuarios cuyo departamento sea Ventas*
Ejemplo de comando de PowerShell:
$SalesUsers = Get-User | Where { $_.Department -like "Sales*" }
foreach ($User in $SalesUsers) {
Add-DistributionGroupMember -Identity "Sales worldwide" -Member $User.name
}Puede descargar los archivos CSV que utilizamos en el artículo con fines de demostración.
Agregar usuario a grupos de distribución que se crearon en las últimas 48 horas
Ejemplo de comando de PowerShell:
$AllNewDistributionGroups = Get-DistributionGroup | Where { $_.WhenCreated -ge ((Get-Date).AddHours(-48)) }
ForEach ($Group in $AllNewDistributionGroups) {
Add-DistributionGroupMember -Identity $Group.name -Member Bradp
}4. Ver información sobre grupos de distribución.
En caso de que desee obtener información más detallada sobre la administración de grupos de distribución usando PowerShell y el tema de “ver y exportar información sobre grupos de distribución”, puede leer el artículo Administrar grupo de distribución usando PowerShell en Office 365 | ver y exportar información sobre el grupo de distribución.
Mostrar la lista de todos los grupos de distribución + detalles
Get-DistributionGroupMostrar miembros del grupo de distribución
Sintaxis del comando de PowerShell:
Get-DistributionGroupMember "<Distribution Group Name>"Ejemplo de comando de PowerShell:
Get-DistributionGroupMember "Sales France"Contar el número de miembros del grupo de distribución
Ejemplo de comando de PowerShell:
(Get-DistributionGroupMember "IT").CountMostrar lista de grupos de distribución con dominio de correo electrónico específico
Sintaxis del comando de PowerShell:
Get-DistributionGroup | Where {$_.emailaddresses -like <"*Domain Name*">} | FT -Property Name,Alias,EmailAddresses -AutosizeEn nuestro ejemplo específico, buscamos grupos de distribución cuya dirección de correo electrónico incluya el nombre de dominio o365info.com.
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.emailaddresses -like "*o365info.com*"} | FT -Property Name,Alias,EmailAddresses -AutosizeObtenga una lista de grupos de distribución que se crearon en las últimas 2 semanas
Muestra información sobre el grupo de distribución que se actualizó antes o después de un rango de fechas específico.
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.WhenCreated -ge ((Get-Date).Adddays(-14))} | FT DisplayName,WhenCreatedMostrar todos los grupos de distribución cuyo propietario (administrado por) es el usuario X
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.ManagedBy -like "*adele*"} | FT DisplayName,ManagedByMostrar todos los grupos de distribución que tienen un moderador
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.ModeratedBy -notlike "$null"} | FT DisplayName,ManagedByMostrar todos los grupos de distribución sincronizados desde Active Directory local
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.IsDirSynced -eq $true} | FT DisplayName, IsDirSyncedMostrar grupos de distribución que aceptan correo electrónico de destinatarios externos
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.RequireSenderAuthenticationEnabled -eq $True} | FT DisplayName,RequireSenderAuthenticationEnabledMostrar grupos de distribución que no aceptan correo electrónico de destinatarios externos
Ejemplo de comando de PowerShell:
Get-DistributionGroup | Where {$_.RequireSenderAuthenticationEnabled -eq $False } | FT DisplayName,RequireSenderAuthenticationEnabledObtener información sobre la membresía del grupo de distribución de un usuario específico
Ejemplo de comando de PowerShell:
$User = read-host “User Name"
$UserDName = (Get-Mailbox $User).name
"The User " + $User + " is a member of the following Distribution Groups:"
ForEach ($DistributionGroup in Get-Distributiongroup -resultsize unlimited) {
if ((Get-Distributiongroupmember $DistributionGroup.identity | select -expand name) -contains $UserDName)
{ $DistributionGroup.name }
}5. Eliminar miembros del grupo de distribución
En caso de que desee obtener información más detallada sobre la administración del grupo de distribución usando PowerShell y el tema de “Eliminar grupo de distribución y miembros, convertir el tipo de grupo de distribución y más”, puede leer el artículo Administrar grupo de distribución usando PowerShell en Office 365 | Eliminar grupo de distribución y miembros | Convertir grupo de distribución.
Eliminar (eliminar) grupo de distribución
Para eliminar un grupo de distribución existente, utilizamos el siguiente comando de PowerShell.
Sintaxis del comando de PowerShell:
Remove-DistributionGroup "<Distribution Group Name>"Ejemplo de comando de PowerShell:
Remove-DistributionGroup "Sales USA"Eliminar miembro del grupo de distribución
Sintaxis del comando de PowerShell:
Remove-DistributionGroupMember -Identity "<Distribution Group name>" -Member "<Member name>"Ejemplo de comando de PowerShell:
Remove-DistributionGroupMember -Identity "Sales USA" -Member "Bob"Eliminar al usuario de todos los grupos de distribución de los que es miembro
Ejemplo de comando de PowerShell:
$DistributionGroups = Get-Distributiongroup -resultsize unlimited
$UserDName = read-host “Enter User Name"
$UserDName = (Get-Mailbox $User).name
"Searching which groups " + $User + " is a member of and removing membership..."
ForEach ($Group in $DistributionGroups) {
if ((Get-Distributiongroupmember $Group.Name | select -expand name) -contains $UserDName) {
write-host "Removing user from group '$Group'"
Remove-DistributionGroupMember -Identity "$Group" -Member "$UserDName" -Confirm:$false
}
}Eliminar a todos los miembros del grupo de distribución
Ejemplo de comando de PowerShell:
$DistributionGroupMember = Get-DistributionGroupMember "IT"
ForEach ($member in $DistributionGroupMember) {
Remove-DistributionGroupMember -Identity IT -Member $member.name -Confirm:$false
}Tareas adicionales de gestión del grupo de distribución | Consejos y trucos
Copiar miembros del grupo de distribución al grupo de seguridad
Ejemplo de comando de PowerShell:
$Members = Get-DistributionGroupMember -id "<Name of the source group>"
ForEach ($Member in $Members) {
Add-DistributionGroupMember -Identity "<Name of the destination security group>" -Member $Member.name
}Extraiga los miembros del grupo de distribución y asigne permisos de acceso completo para cada miembro del grupo
Ejemplo de comando de PowerShell:
$DistributionGroupName = Get-DistributionGroupMember "Sales France"
ForEach ($Member in $DistributionGroupName) {
Add-MailboxPermission -Identity "Bradp" -User $Member.name -AccessRights ‘FullAccess’ -InheritanceType all
}¡Eso es todo!
Todos los comandos de PowerShell que se revisaron están incluidos en el script de PowerShell Distribution list.ps1.


