Uso de identidades administradas de Azure para conectarse a Exchange Online PowerShell
Con el módulo Exchange Online PowerShell V3, puede conectarse a Exchange Online PowerShell mediante una identidad administrada de Azure asignada por el usuario o asignada por el sistema. Para obtener más información sobre las identidades administradas, consulte ¿Qué son las identidades administradas para los recursos de Azure?.
A diferencia de otros métodos de conexión que usan el módulo Exchange Online PowerShell, no puede ejecutar los comandos de conexión en una sesión de Windows PowerShell en el equipo local. En su lugar, se conecta en el contexto del recurso de Azure asociado a la identidad administrada (por ejemplo, una cuenta de Azure Automation o una máquina virtual de Azure).
En el resto de este artículo se explica cómo conectarse mediante la identidad administrada y los requisitos para crear y configurar los recursos adecuados con identidades administradas en Azure.
Nota:
En PowerShell de Exchange Online, no puede usar los procedimientos de este artículo con los siguientes cmdlets de grupo de Microsoft 365:
Puede usar Microsoft Graph para reemplazar la mayor parte de la funcionalidad de esos cmdlets. Para obtener más información, consulte Trabajar con grupos en Microsoft Graph.
Conexión a Exchange Online PowerShell mediante la identidad administrada asignada por el sistema
Después de crear y configurar una identidad administrada asignada por el sistema, use la siguiente sintaxis para conectarse a Exchange Online PowerShell:
Connect-ExchangeOnline -ManagedIdentity -Organization <YourDomain>.onmicrosoft.com
Por ejemplo:
Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com
En el resto de esta sección se explica cómo conectarse mediante recursos de Azure admitidos. Por ejemplo:
- Runbook de PowerShell en la cuenta de Azure Automation con identidad administrada asignada por el sistema.
- Una máquina virtual de Azure con una identidad administrada asignada por el sistema.
Una vez conectado el recurso, los cmdlets y parámetros de PowerShell de Exchange Online están disponibles en función del rol RBAC que asignó en el paso 5: Asignación de roles de Azure AD a la identidad administrada.
Conexión a Exchange Online PowerShell mediante cuentas de Azure Automation con identidad administrada asignada por el sistema
Cree un runbook de PowerShell en la cuenta de Automation. Para obtener instrucciones, consulte Administración de runbooks en Azure Automation.
El primer comando del runbook de PowerShell debe ser el Connect-ExchangeOnline...
comando tal y como se describe al principio de esta sección. Por ejemplo:
Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com
Después, como prueba, puede empezar con un comando sencillo y de bajo impacto en el runbook antes de pasar a comandos o scripts más complejos. Por ejemplo:
Get-AcceptedDomain | Format-Table Name
Después de crear, guardar y publicar correctamente el runbook de PowerShell, siga estos pasos para ejecutarlo en el futuro:
- En la página Cuentas de Automation de https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts, seleccione la cuenta de Automation.
- En el control flotante de detalles que se abre, empiece a escribir "Runbooks" en el
Cuadro de búsqueda y, a continuación, seleccione Runbooks en los resultados.
- En el control flotante Runbooks que se abre, seleccione el runbook.
- En la página de detalles del runbook, haga clic en Inicio.
Conexión a Exchange Online PowerShell mediante máquinas virtuales de Azure con identidad administrada asignada por el sistema
En una ventana Windows PowerShell de la máquina virtual de Azure, use el comando como se describe al principio de esta sección. Por ejemplo:
Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com
Conexión a Exchange Online PowerShell mediante la identidad administrada asignada por el usuario
Después de crear y configurar una identidad administrada asignada por el usuario, use la siguiente sintaxis para conectarse a Exchange Online PowerShell:
Connect-ExchangeOnline -ManagedIdentity -Organization <YourDomain>.onmicrosoft.com -ManagedIdentityAccountId <UserAssignedManagedIdentityPrincipalIdValue>
Obtiene el <valor UserAssignedManagedIdentityPrincipalIdValue> del paso 3: Almacenar la identidad administrada asignada por el usuario en una variable.
En el resto de esta sección se explica cómo conectarse mediante recursos de Azure admitidos. Por ejemplo:
- Runbook de PowerShell en la cuenta de Azure Automation con identidad administrada asignada por el usuario.
- Una máquina virtual de Azure con una identidad administrada asignada por el usuario.
Una vez conectado el recurso, los cmdlets y parámetros de PowerShell de Exchange Online están disponibles en función del rol RBAC que asignó en Paso 6: Asignación de roles de Azure AD a la identidad administrada.
Conexión a Exchange Online PowerShell mediante cuentas de Azure Automation con identidades administradas asignadas por el usuario
Cree un runbook de PowerShell en la cuenta de Automation. Para obtener instrucciones, consulte Administración de runbooks en Azure Automation.
El primer comando del runbook de PowerShell debe ser el Connect-ExchangeOnline...
comando tal y como se describe al principio de esta sección. Por ejemplo:
Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com -ManagedIdentityAccountId bf6dcc76-4331-4942-8d50-87ea41d6e8a1
El valor managedIdentityAccount se obtiene del paso 3: almacenar la identidad administrada asignada por el usuario en una variable.
Después, como prueba, puede empezar con un comando sencillo y de bajo impacto en el runbook antes de pasar a comandos o scripts más complejos. Por ejemplo:
Get-AcceptedDomain | Format-Table Name
Una vez que haya creado correctamente el runbook de PowerShell, siga estos pasos para ejecutarlo en el futuro:
- En la página Cuentas de Automation de https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts, seleccione la cuenta de Automation.
- En el control flotante de detalles que se abre, empiece a escribir "Runbooks" en el
Cuadro de búsqueda y, a continuación, seleccione Runbooks en los resultados.
- En el control flotante Runbooks que se abre, seleccione el runbook.
- En la página de detalles del runbook, haga clic en Inicio.
Conexión a Exchange Online PowerShell mediante máquinas virtuales de Azure con identidades administradas asignadas por el sistema
En una ventana Windows PowerShell de la máquina virtual de Azure, use el comando como se describe al principio de esta sección. Por ejemplo:
$MI_ID = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").PrincipalId
Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com -ManagedIdentityAccountId $MI_ID
Creación y configuración de una identidad administrada asignada por el sistema
Estos pasos son:
- (Opcional) Creación de un recurso con identidad administrada asignada por el sistema
- Almacenar la identidad administrada asignada por el sistema en una variable
- Agregar el módulo de PowerShell Exchange Online a la identidad administrada
- Conceda al API Exchange.ManageAsApp permiso para que la identidad administrada llame a Exchange Online
- Asignación de roles de Azure AD a la identidad administrada
Una vez completados los pasos, estará listo para conectarse a Exchange Online PowerShell mediante la identidad administrada asignada por el sistema.
Paso 1: Creación de un recurso con identidad administrada asignada por el sistema
Si va a usar un recurso existente que ya está configurado con la identidad administrada asignada por el sistema, puede ir al paso siguiente. Se admiten los siguientes tipos de recursos:
- cuentas de Azure Automation
- Máquinas virtuales de Azure (VM)
Creación de cuentas Azure Automation con identidades administradas asignadas por el sistema
Cree una cuenta de Automation configurada para la identidad administrada asignada por el sistema mediante las instrucciones de Inicio rápido: Creación de una cuenta de Automation mediante el Azure Portal.
Las cuentas de Automation están disponibles en la página Cuentas de Automation en https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts.
Al crear la cuenta de Automation, la identidad administrada asignada por el sistema se selecciona de forma predeterminada en la pestaña Avanzadas de los detalles de la cuenta de Automation.
Para habilitar la identidad administrada asignada por el sistema en una cuenta de Automation existente, consulte Habilitación de la identidad administrada asignada por el sistema.
Para crear la cuenta de Automation con la identidad administrada asignada por el sistema en Azure PowerShell, siga estos pasos:
Conéctese a Azure Az PowerShell mediante la ejecución del siguiente comando:
Connect-AzAccount
Si es necesario, cree un grupo de recursos de Azure para usarlo con la cuenta de Automation mediante la ejecución del siguiente comando:
New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
- <ResourceGroupName> es el nombre único del nuevo grupo de recursos.
- <La ubicación> es un valor válido del comando :
Get-AzLocation | Format-Table Name
.
Por ejemplo:
New-AzResourceGroup -Name "ContosoRG" -Location "West US"
Para obtener instrucciones completas, consulte Creación de grupos de recursos.
Use la sintaxis siguiente para crear una cuenta de Automation con una identidad administrada asignada por el sistema:
New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignSystemIdentity
- <AutomationAccountName> es el nombre único de la nueva cuenta de Automation.
- <ResourceGroupName> es el nombre del grupo de recursos existente que desea usar. Los valores válidos están visibles en la salida del comando:
Get-AzResourceGroup
. - <La ubicación> es un valor válido del comando :
Get-AzLocation | Format-Table Name
.
Por ejemplo:
New-AzAutomationAccount -Name "ContosoAzAuto1" -ResourceGroupName "ContosoRG" -Location "West US" -AssignSystemIdentity
Para obtener información detallada sobre la sintaxis y los parámetros, consulte New-AzAutomationAccount.
Configuración de máquinas virtuales de Azure con identidades administradas asignadas por el sistema
Para obtener instrucciones, consulte los artículos siguientes:
Identidad administrada asignada por el sistema en el Azure Portal
Identidad administrada asignada por el sistema en PowerShell
Paso 2: Almacenar la identidad administrada asignada por el sistema en una variable
Use la siguiente sintaxis para almacenar el valor del identificador (GUID) de la identidad administrada en una variable que usará en los próximos pasos de Azure Az PowerShell.
$MI_ID = (Get-AzADServicePrincipal -DisplayName "<ResourceName>").Id
Donde <ResourceName> es el nombre de la cuenta de Azure Automation o la máquina virtual de Azure. Por ejemplo:
$MI_ID = (Get-AzADServicePrincipal -DisplayName "ContosoAzAuto1").Id
Para comprobar que la variable se capturó correctamente, ejecute el comando $MI_ID
. La salida debe ser un valor GUID (por ejemplo, 9f164909-3007-466e-a1fe-28d20b16e2c2).
Para obtener información detallada sobre la sintaxis y los parámetros, vea Get-AzADServicePrincipal.
Paso 3: Agregar el módulo de PowerShell Exchange Online a la identidad administrada
Agregue el módulo de PowerShell Exchange Online a cuentas de Azure Automation con identidades administradas asignadas por el sistema.
Sugerencia
Si el siguiente procedimiento del Azure Portal no funciona automáticamente, pruebe el comando New-AzAutomationModule en Azure PowerShell que se describe después del procedimiento de Azure Portal.
En la página Cuentas de Automation de https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts, seleccione la cuenta de Automation.
En el control flotante de detalles que se abre, empiece a escribir "Módulos" en el
Cuadro de búsqueda y, a continuación, seleccione Módulos en los resultados.
En el control flotante Módulos que se abre, haga clic en
Agregue un módulo.
En la página Agregar un módulo que se abre, configure los siguientes valores:
- Cargar un archivo de módulo: seleccione Examinar desde la galería.
- Archivo de módulo de PowerShell: seleccione Haga clic aquí para examinar desde la galería:
- En la página Examinar galería que se abre, empiece a escribir "ExchangeOnlineManagement" en el
Cuadro de búsqueda, presione Entrar y, a continuación, seleccione ExchangeOnlineManagement en los resultados.
- En la página de detalles que se abre, haga clic en Seleccionar para volver a la página Agregar un módulo .
- En la página Examinar galería que se abre, empiece a escribir "ExchangeOnlineManagement" en el
- Versión en tiempo de ejecución: seleccione 5.1 o 7.1 (versión preliminar). Para agregar ambas versiones, repita los pasos de esta sección para agregar y seleccione la otra versión en tiempo de ejecución del módulo.
Cuando haya terminado, haga clic en Importar.
De nuevo en el control flotante Módulos, empiece a escribir "ExchangeOnlineManagement" en el
Cuadro de búsqueda para ver el valor de Estado. Una vez completada la importación del módulo, el valor es Disponible.
Para agregar el módulo a la cuenta de Automation en Azure PowerShell, use la sintaxis siguiente:
New-AzAutomationModule -ResourceGroupName "<ResourceGroupName>" -AutomationAccountName "<AutomationAccountName>" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/<LatestModuleVersion>
- <ResourceGroupName> es el nombre del grupo de recursos que ya está asignado a la cuenta de Automation.
- <AutomationAccountName> es el nombre de la cuenta de Automation.
- <LatestModuleVersion> es la versión actual del módulo ExchangeOnlineManagement. Para ver la versión más reciente de disponibilidad general (no versión preliminar) del módulo, ejecute el siguiente comando en Windows PowerShell:
Find-Module ExchangeOnlineManagement
. Para ver la versión preliminar más reciente, ejecute el siguiente comando:Find-Module ExchangeOnlineManagement -AllowPrerelease
. - Actualmente, los procedimientos de PowerShell no le ofrecen una opción para la versión en tiempo de ejecución (es la 5.1).
Por ejemplo:
New-AzAutomationModule -ResourceGroupName "ContosoRG" -AutomationAccountName "ContosoAzAuto1" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/3.1.0
Para comprobar que el módulo se importó correctamente, ejecute el siguiente comando:
Get-AzAutomationModule -ResourceGroupName ContosoRG -AutomationAccountName ContosoAzAuto1 -Name ExchangeOnlineManagement
Durante la importación, la propiedad ProvisioningState tendrá el valor Creating. Una vez completada la importación del módulo, el valor cambiará a Correcto.
Para obtener información detallada sobre la sintaxis y los parámetros, vea New-AzAutomationModule.
Adición del módulo Exchange Online PowerShell a máquinas virtuales de Azure con identidades administradas asignadas por el sistema
Instale el módulo de PowerShell Exchange Online en la máquina virtual de Azure. Para obtener instrucciones, consulte Instalación y mantenimiento del módulo de PowerShell Exchange Online.
Paso 4: Conceder permiso a la API Exchange.ManageAsApp para que la identidad administrada llame a Exchange Online
Los procedimientos de este paso requieren el SDK de PowerShell de Microsoft Graph. Para obtener instrucciones de instalación, consulte Instalación del SDK de PowerShell de Microsoft Graph.
Ejecute el siguiente comando para conectarse a Microsoft Graph PowerShell con los permisos necesarios:
Connect-MgGraph -Scopes AppRoleAssignment.ReadWrite.All,Application.Read.All
Si se abre un cuadro de diálogo Permisos solicitados , seleccione Consentimiento en nombre de su organización y, a continuación, haga clic en Aceptar.
Ejecute los comandos siguientes para conceder a la API Exchange.ManageAsApp permiso para que la identidad administrada llame a Exchange Online:
$AppRoleID = "dc50a0fb-09a3-484d-be87-e023b12c6440" $ResourceID = (Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'").Id New-MgServicePrincipalAppRoleAssignment -ServicePrincipalId $MI_ID -PrincipalId $MI_ID -AppRoleId $AppRoleID -ResourceId $ResourceID
$MI_ID
es el valor id. (GUID) de la identidad administrada que almacenó en una variable en el paso 2.$AppRoleID
es el valor del identificador (GUID) del permiso de API Exchange.ManageAsApp que es el mismo en todas las organizaciones.$ResourceID
es el valor del identificador (GUID) del recurso de Office 365 Exchange Online en Azure Active Directory. El valor id. es diferente en todas las organizaciones.
Para obtener información detallada sobre la sintaxis y los parámetros, consulte los artículos siguientes:
Paso 5: Asignación de roles de Azure AD a la identidad administrada
Los roles de Azure AD admitidos se describen en la lista siguiente:
- Administrador de cumplimiento
- Administrador de Exchange*
- Administrador de destinatarios de Exchange
- Administrador global*
- Lector global
- Administrador del servicio de asistencia
- Administrador de seguridad*
- Lector de seguridad
* Los roles Administrador global y Administrador de Exchange proporcionan los permisos necesarios para cualquier tarea en Exchange Online PowerShell. Por ejemplo:
- Administración de destinatarios.
- Características de seguridad y protección. Por ejemplo, contra correo no deseado, antimalware, antiphishing y los informes asociados.
El rol Administrador de seguridad no tiene los permisos necesarios para esas mismas tareas.
Para obtener instrucciones generales sobre cómo asignar roles en Azure AD, vea Ver y asignar roles de administrador en Azure Active Directory.
En el Portal de Azure AD en https://portal.azure.com/, empiece a escribir roles y administradores en el cuadro Buscar de la parte superior de la página y, a continuación, seleccione Roles y administradores de Azure AD en los resultados de la sección Servicios .
O bien, para ir directamente a la página Roles y administradores de Azure AD , use https://portal.azure.com/#view/Microsoft_AAD_IAM/AllRolesBlade.
En la página Roles y administradores , busque y seleccione uno de los roles admitidos haciendo clic en el nombre del rol (no en la casilla) de los resultados. Por ejemplo, busque y seleccione el rol de administrador de Exchange .
En la página Asignaciones que aparece, haga clic en Agregar asignaciones.
En el control flotante Agregar asignaciones que se abre, busque y seleccione la identidad administrada que creó o identificó en el paso 1.
Cuando haya terminado, haga clic en Agregar.
De nuevo en la página Asignaciones , compruebe que el rol se ha asignado a la identidad administrada.
Para asignar un rol a la identidad administrada en Microsoft Graph PowerShell, siga estos pasos:
Ejecute el siguiente comando para conectarse a Microsoft Graph PowerShell con los permisos necesarios:
Connect-MgGraph -Scopes RoleManagement.ReadWrite.Directory
Si se abre un cuadro de diálogo Permisos solicitados , seleccione Consentimiento en nombre de su organización y, a continuación, haga clic en Aceptar.
Use la sintaxis siguiente para asignar el rol de Azure AD necesario a la identidad administrada:
$RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq '<Role Name>'").Id New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
- <Nombre del> rol es el nombre del rol de Azure AD, como se mencionó anteriormente en esta sección.
$MI_ID
es el valor id. (GUID) de la identidad administrada que almacenó en una variable en el paso 2.
Por ejemplo:
$RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Exchange Administrator'").Id New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
Para obtener información detallada sobre la sintaxis y los parámetros, consulte los artículos siguientes:
Creación y configuración de una identidad administrada asignada por el usuario
Estos pasos son:
- (Opcional) Creación de una identidad administrada asignada por el usuario
- (Opcional) Creación de un recurso con identidad administrada asignada por el usuario
- Almacenar la identidad administrada asignada por el usuario en una variable
- Conceda al API Exchange.ManageAsApp permiso para que la identidad administrada llame a Exchange Online
- Conceda al API Exchange.ManageAsApp permiso para que la identidad administrada llame a Exchange Online
- Asignación de roles de Azure AD a la identidad administrada
Después de completar los pasos, estará listo para conectarse a Exchange Online PowerShell mediante la identidad administrada asignada por el usuario.
Paso 1: Creación de una identidad administrada asignada por el usuario
Si ya tiene una identidad administrada asignada por el usuario existente que va a usar, puede ir al paso siguiente para crear un recurso con la identidad administrada asignada por el usuario.
De lo contrario, cree la identidad administrada asignada por el usuario en el Azure Portal mediante las instrucciones de Creación de una identidad administrada asignada por el usuario.
Para crear la identidad administrada asignada por el usuario en Azure PowerShell, siga estos pasos:
Conéctese a Azure Az PowerShell mediante la ejecución del siguiente comando:
Connect-AzAccount
Si es necesario, cree un grupo de recursos de Azure para usarlo con la identidad administrada asignada por el usuario mediante la ejecución del siguiente comando:
New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
- <ResourceGroupName> es el nombre único del nuevo grupo de recursos.
- <La ubicación> es un valor válido del comando :
Get-AzLocation | Format-Table Name
.
Por ejemplo:
New-AzResourceGroup -Name "ContosoRG2" -Location "West US"
Para obtener instrucciones completas, consulte Creación de grupos de recursos.
Use la sintaxis siguiente para crear una identidad administrada asignada por el usuario:
New-AzUserAssignedIdentity -Name "<UserAssignedManagedIdentityName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>"
- <UserAssignedManagedIdentityName> es el nombre único de la identidad administrada asignada por el usuario.
- <ResourceGroupName> es el nombre del grupo de recursos existente que desea usar. Los valores válidos están visibles en la salida del comando:
Get-AzResourceGroup
. - <La ubicación> es un valor válido del comando :
Get-AzLocation | Format-Table Name
.
Por ejemplo:
New-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2" -Location "West US"
Para obtener información detallada sobre la sintaxis y los parámetros, vea New-AzUserAssignedIdentity.
Paso 2: Creación de un recurso con identidad administrada asignada por el usuario
Si va a usar un recurso existente que ya está configurado con una identidad administrada asignada por el usuario, puede ir al paso siguiente. Se admiten los siguientes tipos de recursos:
- cuentas de Azure Automation
- Azure Virtual Machines (máquinas virtuales)
Creación de cuentas Azure Automation con identidades administradas asignadas por el usuario
Cree una cuenta de Automation configurada para la identidad administrada asignada por el usuario mediante las instrucciones de Inicio rápido: Creación de una cuenta de Automation mediante el Azure Portal.
Las cuentas de Automation están disponibles en la página Cuentas de Automation en https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts.
Asegúrese de cambiar la selección de identidad administrada en la pestaña Avanzadas a Asignada por el usuario.
Para habilitar la identidad administrada asignada por el usuario en una cuenta de Automation existente, consulte Incorporación de una identidad administrada asignada por el usuario.
Para crear la cuenta de Automation con la identidad administrada asignada por el usuario en Azure PowerShell, siga estos pasos:
Conéctese a Azure Az PowerShell mediante la ejecución del siguiente comando:
Connect-AzAccount
Use la sintaxis siguiente para crear una cuenta de Automation con una identidad administrada asignada por el usuario:
$UAMI = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").Id New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignUserIdentity $UAMI
- <UserAssignedMI> es el nombre de la identidad administrada asignada por el usuario que desea usar.
- <MIResourceGroupName> es el nombre del grupo de recursos asignado a la identidad administrada asignada por el usuario. Los valores válidos están visibles en la salida del comando:
Get-AzResourceGroup
. - <AutomationAccountName> es el nombre único de la nueva cuenta de Automation.
- <ResourceGroupName> es el nombre del grupo de recursos que desea usar, que podría ser el mismo valor <que MIResourceGroupName>.
- <La ubicación> es un valor válido del comando :
Get-AzLocation | Format-Table Name
.
Por ejemplo:
$UAMI = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").Id New-AzAutomationAccount -Name "ContosoAzAuto2" -ResourceGroupName "ContosoRG2" -Location "West US" -AssignUserIdentity $UAMI
Para obtener información detallada sobre la sintaxis y los parámetros, consulte New-AzAutomationAccount.
Configuración de máquinas virtuales de Azure con identidades administradas asignadas por el usuario
Para obtener instrucciones, consulte los artículos siguientes:
- Identidad administrada asignada por el usuario en el Azure Portal
- Identidad administrada asignada por el usuario en PowerShell
Paso 3: Almacenar la identidad administrada asignada por el usuario en una variable
Use la sintaxis siguiente en Azure Az PowerShell para almacenar el valor principalId de la identidad administrada asignada por el usuario en la variable que usará en los pasos siguientes:
$MI_ID = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").PrincipalId
- <UserAssignedMI> es el nombre de la identidad administrada asignada por el usuario.
- <MIResourceGroupName> es el nombre del grupo de recursos asociado a la identidad administrada asignada por el usuario.
Por ejemplo:
$MI_ID = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").PrincipalId
Para comprobar que la variable se capturó correctamente, ejecute el comando $MI_ID
. La salida debe ser un valor GUID (por ejemplo, bf6dcc76-4331-4942-8d50-87ea41d6e8a1).
Para obtener información detallada sobre la sintaxis y los parámetros, vea Get-AzUserAssignedIdentity.
Paso 4: Agregar el módulo de PowerShell Exchange Online a la identidad administrada
Los pasos para la identidad administrada asignada por el usuario son los mismos que en el paso 3 de identidad administrada asignada por el sistema.
Nota:
Asegúrese de usar los valores correctos para el nombre del grupo de recursos y el nombre de la cuenta de automation.
Paso 5: Conceder permiso a la API Exchange.ManageAsApp para que la identidad administrada llame a Exchange Online
Los pasos para la identidad administrada asignada por el usuario son los mismos que en el paso 4 de identidad administrada asignada por el sistema.
Aunque los valores de identidad administrada se obtuvieron de forma diferente para los asignados por el usuario frente a los asignados por el sistema, estamos usando el mismo nombre de variable en el comando ($MI_ID
), por lo que el comando funciona para ambos tipos de identidades administradas.
Paso 6: Asignación de roles de Azure AD a la identidad administrada
Los pasos para la identidad administrada asignada por el usuario son básicamente los mismos que en el paso 5 de identidad administrada asignada por el sistema.
En el Azure Portal, asegúrese de seleccionar la identidad administrada asignada por el usuario como identidad administrada a la que asignar el rol de Azure AD (no la propia cuenta de automation).
El comando de PowerShell funciona para identidades administradas asignadas por el usuario y asignadas por el sistema. Aunque los valores de identidad administrados se obtuvieron de forma diferente para los asignados por el usuario frente a los asignados por el sistema, se usa el mismo nombre de variable en el comando ($MI_ID
).