Tutorial: Uso de PowerShell para invitar en bloque a usuarios de colaboración de Azure AD B2B

Si usas la colaboración de Azure Active Directory (Azure AD) B2B para trabajar con asociados externos, puede invitar a varios usuarios a su organización al mismo tiempo. En este tutorial, obtendrá información sobre cómo usar PowerShell para enviar invitaciones de forma masiva a usuarios externos. En particular, haga lo siguiente:

  • Prepare un archivo de valores separados por comas (.csv) con la información de usuario.
  • Ejecute un script de PowerShell para enviar invitaciones.
  • Verifique si los usuarios se agregaron al directorio.

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.

Prerrequisitos

Instalación del último módulo de AzureADPreview

Asegúrese de que instala la última versión de Azure AD PowerShell para el módulo Graph (AzureADPreview).

En primer lugar, compruebe qué módulos ha instalado. Abra Windows PowerShell como un usuario con privilegios elevados (Ejecutar como administrador) y ejecute el comando siguiente:

Get-Module -ListAvailable AzureAD*

En función de la salida, realice una de las siguientes acciones:

  • Si no se devuelve ningún resultado, ejecute el siguiente comando para instalar el módulo AzureADPreview:

    Install-Module AzureADPreview
    
  • Si solo se muestra el módulo AzureAD en los resultados, ejecute los comandos siguientes para instalar el módulo AzureADPreview:

    Uninstall-Module AzureAD
    Install-Module AzureADPreview
    
  • Si solo se muestra el módulo AzureADPreview en los resultados, pero recibe un mensaje que indica que hay una versión posterior, ejecute los comandos siguientes para actualizar el módulo:

    Uninstall-Module AzureADPreview
    Install-Module AzureADPreview
    

Puede recibir un mensaje que indica que está instalando el módulo desde un repositorio de confianza. Esto se produce si el repositorio de PSGallery no se ha establecido previamente como un repositorio de confianza. Presione Y para instalar el módulo.

Obtención de cuentas de correo electrónico de prueba

Necesita dos o más cuentas de correo electrónico de prueba a las que poder enviar las invitaciones. Las cuentas deben estar fuera de su organización. Puede usar cualquier tipo de cuenta, incluidas las cuentas sociales como las direcciones de gmail.com o outlook.com.

Preparación del archivo .csv

En Microsoft Excel, cree un archivo .csv con la lista de nombres de usuarios invitados y las direcciones de correo electrónico. Asegúrese de incluir los encabezados de columna Nombre e InvitedUserEmailAddress.

Por ejemplo, cree una hoja de cálculo con el formato siguiente:

PowerShell output showing pending user acceptance

Guarde el archivo como C:\BulkInvite\Invitations.csv.

Si no tiene Excel, puede crear un archivo .csv en cualquier editor de texto como el Bloc de notas. Separe cada valor con una coma y cada fila con una línea nueva.

Inicio de sesión en su inquilino

Ejecute el siguiente comando para conectarse al dominio del inquilino:

Connect-AzureAD -TenantDomain "<Tenant_Domain_Name>"

Por ejemplo, Connect-AzureAD -TenantDomain "contoso.onmicrosoft.com".

Cuando se le solicite, escriba las credenciales.

Envío de invitaciones en masa

Para enviar las invitaciones, ejecute el siguiente script de PowerShell (donde c:\bulkinvite\invitations.csv es la ruta de acceso al archivo .csv):

$invitations = import-csv c:\bulkinvite\invitations.csv

$messageInfo = New-Object Microsoft.Open.MSGraph.Model.InvitedUserMessageInfo

$messageInfo.customizedMessageBody = "Hello. You are invited to the Contoso organization."

foreach ($email in $invitations)
   {New-AzureADMSInvitation `
      -InvitedUserEmailAddress $email.InvitedUserEmailAddress `
      -InvitedUserDisplayName $email.Name `
      -InviteRedirectUrl https://myapps.microsoft.com `
      -InvitedUserMessageInfo $messageInfo `
      -SendInvitationMessage $true
   }

El script enviará una invitación a las direcciones de correo electrónico del archivo Invitations.csv. Debería ver una salida similar a la siguiente para cada usuario:

Screenshot that shows PowerShell output that includes pending user acceptance.

Verificación de la existencia de los usuarios en el directorio

Para verificar que se agregaron los usuarios invitados a Azure AD, ejecute el siguiente comando:

 Get-AzureADUser -Filter "UserType eq 'Guest'"

Debería ver los usuarios invitados en la lista, con un nombre principal de usuario (UPN) con el formato emailaddress#EXT#@dominio. Por ejemplo, lstokes_fabrikam.com#EXT#@contoso.onmicrosoft.com, donde contoso.onmicrosoft.com es la organización desde la que se enviaron las invitaciones.

Limpieza de recursos

Cuando ya no sean necesarias, puede eliminar las cuentas de usuario de prueba del directorio. Ejecute el siguiente comando para eliminar una cuenta de usuario:

 Remove-AzureADUser -ObjectId "<UPN>"

Por ejemplo: Remove-AzureADUser -ObjectId "lstokes_fabrikam.com#EXT#@contoso.onmicrosoft.com"

Pasos siguientes

En este tutorial, ha enviado invitaciones en masa a usuarios invitados fuera de la organización. A continuación, obtenga información sobre cómo funciona el proceso de canje de la invitación.