Administrar direcciones de correo electrónico con PowerShell
Una de las tareas más comunes como administrador es buscar, cambiar o agregar una dirección de correo electrónico al buzón de un usuario. PowerShell facilita mucho estas tareas: puede encontrar fácilmente los usuarios a los que pertenece la dirección de correo electrónico y agregar o eliminar un alias.
En este artículo, le mostraré algunos consejos sobre cómo encontrar una dirección de correo electrónico o una dirección Proxy en Exchange o Active Directory y cómo agregarla o eliminarla.
Encontrar el propietario de la dirección de correo electrónico
Estoy trabajando con Exchange Online aquí, así que primero debemos conectarnos a Exchange Online. Puede utilizar este script de conector o ejecutar el siguiente código:
#Create credential object
$credObject = Get-Credential
#Import the Exchange Online ps session
$ExchOnlineSession = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri https://outlook.office365.com/powershell-liveid/ -Credential $credObject -Authentication Basic -AllowRedirection
Import-PSSession $ExchOnlineSessionHay varias formas de encontrar al propietario de una dirección de correo electrónico; comenzamos con el cmdlet get-recipient. Esto devolverá todos los objetos habilitados para correo (buzones de correo, usuarios de correo, contactos, grupos de distribución), por lo que este es el mejor lugar para comenzar su búsqueda.
Usando filtros y comodines podemos buscar en una parte de la dirección de correo electrónico:
Get-Recipient -Filter {EmailAddresses -like 'smtp:gr*' -or EmailAddresses -like 'gr*'}
En este caso buscamos una dirección de correo electrónico que comience con “gr” (tenga en cuenta el comodín * al final). Agregué "smtp:" antes del inicio de la dirección de correo, porque si sus alias se administran a través de Active Directory, notará que comienzan con "smtp:".
Por supuesto, también puedes agregar un comodín delante, pero esto ampliará mucho la consulta de búsqueda.
El comando anterior devolverá el usuario del objeto que tiene el nombre o las letras buscadas en la dirección de correo electrónico, pero no mostrará dónde. Seleccione el campo Dirección de correo electrónico y amplíelo para mostrar todos los valores del objeto de valores múltiples.
Get-Recipient -Filter {EmailAddresses -like 'smtp:gr*'} -Properties Name,Emailaddresses | select Name,Emailaddresses -ExpandProperty EmailaddressesBúsqueda de objetos de Active Directory
Si desea comprobar o encontrar la dirección de correo electrónico de un objeto de Active Directory (usuario o grupo), podemos utilizar el cmdlet get-ADObject o get-aduser. Primero necesitamos importar el módulo ActiveDirectory:
Import-Module ActiveDirectoryPodemos usar el cmd a continuación para buscar en Active Directory. Filtraremos los resultados según la dirección de correo o la dirección proxy. Usando un comodín y el modificador -like podemos buscar una parte de la dirección de correo electrónico.
Get-ADObject -Properties mail, proxyAddresses -Filter {mail -like "gr*" -or proxyAddresses -like "smtp:gr*"}Agregar o eliminar una dirección proxy a un usuario de AD
Con PowerShell también podemos agregar o eliminar fácilmente una dirección proxy a un usuario:
Set-ADUser -Identity user1 -Add @{Proxyaddresses="smtp:[email "}Quitándolo:
Set-ADUser -Identity user1 -Remove @{Proxyaddresses="smtp:[email "}