Esta mañana tenia que crear varias cuentas de correo a partir de un listado de Excel, con usuarios en el que no sabia que usuarios estaban ya dados de alta, que usuarios tenian Mailbox y cuales eran usuarios nuevos.
Como eran un montón de usuarios me he dedicado ha hacer un script de Powershell que lea un CSV (creado a partir del Excel) que comprueba si el usuario existe y crea el buzón con los parámetros deseados.
Lo primero es decir que el Excel tiene que tener un formato parecido a este:
Name;Alias;Username;Password Hannibal Smith;asmith;asmith@ateam.local;password M. A. Barracus;mabarracus;mabarracus@ateam.local;password H. M. Murdock;murdock;murdock@ateam.local;password |
Una vez tenemos el CSV con un formato parecido, el powershell script es el siguiente:
$listado = Import-Csv '.\<listado>.csv' -Delimiter ';' $basededatos = "<base de datos>" $unidadorganizativa = "<unidad organizativa>" foreach ($user in $listado) { $usuario = $user.Usernameecho "//////////////////////////////////"echo "## CREAR BUZON USUARIO $usuario ##"If (get-mailbox $user.username -ErrorACtion SilentlyContinue) {}echo "EL BUZON $usuario YA EXISTE"}Else{echo "El buzón de $usuario no existe" If (get-user $usuario -ErrorACtion SilentlyContinue) {}echo "\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"get-user -Identity $usuario echo "HABILITAR BUZON DEL USUARIO $usuario" enable-mailbox -identity $usuario -Database $basededatos -Alias $user.alias}Else{If (!(get-user $usuario -ErrorACtion SilentlyContinue)){ echo "CREAR USUARIO Y HABILITAR BUZON PARA $usuario" new-mailbox -UserprincipalName $usuario -Alias $user.alias -Name $user.name -Database $basededatos -OrganizationalUnit $unidadorganizativa -Password (ConvertTo-SecureString $user.Password –AsPlainText –force)}} |
me da error
ResponderEliminar