Contacto Dattics

Contáctenos

Nuestro WhatsApp

Varios son los beneficios de contar con la información completa de nuestros usuarios en Azure AD, sin embargo, si iniciamos en un directorio con centenas o miles de usuarios, la actualización de la información de los usuarios podría ser una tarea que nos lleve días o incluso semanas.

Hoy veremos cómo hacerlo de forma fácil utilizando Powershell, si aún no sabes qué es Powershell, recomendamos estudiarlo ya que es una herramienta muy interesante para administrar nuestras empresas en Microsoft 365.

Paso 1. Conectarse a Exchange con Powershell

Lo primero es abrir Powershell con privilegios administrativos e instalar el módulo de administración de Exchange, recomendamos la versión 2.

Para instrucciones de cómo instalar el módulo, ingresen a:
https://docs.microsoft.com/es-es/powershell/exchange/exchange-online/exchange-online-powershell-v2/exchange-online-powershell-v2?view=exchange-ps

Para ingresar a Exchange V2 con Powershell, escribimos lo siguiente:

Connect-ExchangeOnline -UserPrincipalName <UPN>

UPN: Es el usuario (correo) del administrador, puede ser Global o Administrador de Exchange.
El código anterior es para usuarios con multiple factor de autenticación (MFA) activo (lo cual se recomienda al menos para los administradores).

Paso 2. Descargar los usuarios existentes

Procederemos a descargar un listado con los usuarios existentes, para ello utilizaremos el siguiente comando:

Get-User -resultsize unlimited |select * |export-csv c:ruta-del-archivousuarios.csv

Modificamos la ruta y el nombre del archivo como deseemos y obtendremos en esa ruta un CSV con la información de todos los usuarios.

Paso 3. Limpiar nuestro CSV

El documento descargado cuenta con mucha información no relevante para nuestro propósito, procederemos a borrar las columnas que deseemos, la única que no se puede borrar es UserPrincipleName ya que el clave para actualizar las demás.

Lo común es que dejemos campos como FirstName, LastName, DisplayName, Department, Title, StreetAddress, City, State, Phone, MobilPhone, HomePhone, CountryOrRegion, y Notes.

Si bien están en inglés, es fácil identificar que diligenciar en cada campo, aunque un truco que recomendamos para estar seguros, es diligenciar por completo al menos un usuario para que al hacer el paso 2 podamos contar con toda esta información como guía.

Un truco que recomendamos para estar seguros, es diligenciar por completo al menos un usuario para que al hacer el paso 2 podamos contar con toda esta información como guía

Este archivo podremos convertirlo a XLSX y solicitar por ejemplo a Gestión Humana que diligencien la información faltante.

Paso 4. Organizar el documento

Primero debemos revisar que la información esté bien diligenciada y en formato tabular.

Lo convertimos de nuevo a CSV, como nuestro archivo seguramente tendrá tildes, se debe guardar como CSV UTF-8 (busquen la opción en el menú de opciones de Guardar Como en Excel).

Paso 5. Conectarse a Azure AD por Powershell

Esta vez debemos conectarnos al Directorio Activo en Azure con Powershell, debemos instalar el siguiente módulo:

Install-Module -Name MSOnline

Y luego, nos conectamos con el siguiente comando:

Connect-MsolService

Paso 6. Cargar el documento

Para cargar el documento y proceder con la actualización, debemos ingresar el siguiente comando, sin embargo, antes de proceder, se debe revisar y adecuarlo a nuestros requerimientos.

Se recomienda utilizar un archivo con 2 o 3 usuarios para hacer pruebas y en caso de errores, no tener consecuencias mayores

Import-Csv "C:\ruta-al-archivo\demo.csv" | ForEach{Set-MsolUser -UserPrincipalName $_.UserPrincipalName -FirstName $_.FirstName -LastName $_.LastName -DisplayName $_.DisplayName -StreetAddress $_.StreetAddress -Office $_.Office -Country $_.Country -Title $_.title -Department $_.Department -City $_.City -Phone $_.Phone -State $_.State -MobilePhone $_.MobilePhone}

Básicamente, este comando indica que se debe importar el CSV y luego, para cada usuario, se debe buscar el usuario por su UPN (UserPrincipalName) y actualizar cada parámetro con la columna respectiva del CSV. Recordemos modificar la ruta correcta y nombre de nuestro archivo.

Hay un campo llamado Company, el cual indica la empresa para la que se trabaja, para este campo, debemos utilizar otro comando diferente:

Import-Csv "C:ruta-al-archivousuarios.csv" | foreach {Set-MsolUser -UserPrincipalName $_.UserPrincipalName -Company $_.company}

Paso 7. Verificar

Si todo se hizo de forma correcta, tendremos nuestros usuarios actualizados de forma rápido y eficiente.

Podremos hacer este procedimiento cuantas veces deseemos en el futuro para agregar o modificar campos.