Usare le identità gestite di Azure per connettersi a Exchange Online PowerShell

Usando il modulo Exchange Online PowerShell V3, è possibile connettersi a Exchange Online PowerShell usando un'identità gestita di Azure assegnata dall'utente o assegnata dal sistema. Per altre informazioni sulle identità gestite, vedere Informazioni sulle identità gestite per le risorse di Azure.

A differenza di altri metodi di connessione che usano il modulo Exchange Online PowerShell, non è possibile eseguire i comandi di connessione in una sessione di Windows PowerShell nel computer locale. Si esegue invece la connessione nel contesto della risorsa di Azure associata all'identità gestita, ad esempio un account di automazione di Azure o una macchina virtuale di Azure.

Il resto di questo articolo illustra come connettersi usando l'identità gestita e i requisiti per la creazione e la configurazione delle risorse appropriate con identità gestite in Azure.

Nota

In Exchange Online PowerShell non è possibile usare le procedure descritte in questo articolo con i cmdlet di Gruppo di Microsoft 365 seguenti:

È possibile usare Microsoft Graph per sostituire la maggior parte delle funzionalità di tali cmdlet. Per altre informazioni, vedere Uso dei gruppi in Microsoft Graph.

Le connessioni API REST nel modulo V3 richiedono i moduli PowerShellGet e PackageManagement. Per altre informazioni, vedere PowerShellGet per le connessioni basate su REST in Windows.

Connettersi a Exchange Online PowerShell usando l'identità gestita assegnata dal sistema

Dopo aver creato e configurato un'identità gestita assegnata dal sistema, usare la sintassi seguente per connettersi a Exchange Online PowerShell:

Connect-ExchangeOnline -ManagedIdentity -Organization <YourDomain>.onmicrosoft.com

Ad esempio:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com

Il resto di questa sezione illustra come connettersi usando le risorse di Azure supportate. Ad esempio:

  • Runbook di PowerShell nell'account Automazione di Azure con identità gestita assegnata dal sistema.
  • Una macchina virtuale di Azure con un'identità gestita assegnata dal sistema.

Dopo aver connesso la risorsa, i Exchange Online cmdlet e parametri di PowerShell sono disponibili in base al ruolo controllo degli accessi in base al ruolo assegnato nel passaggio 5: Assegnare ruoli Microsoft Entra all'identità gestita

Connettersi a Exchange Online PowerShell usando account Automazione di Azure con identità gestita assegnata dal sistema

Creare un runbook di PowerShell nell'account di automazione. Per istruzioni, vedere Gestire i runbook in Automazione di Azure.

Il primo comando nel runbook di PowerShell deve essere il Connect-ExchangeOnline... comando come descritto all'inizio di questa sezione. Ad esempio:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com

Successivamente, come test, è possibile iniziare con un comando semplice e a basso impatto nel runbook prima di passare a comandi o script più complessi. Ad esempio:

Get-AcceptedDomain | Format-Table Name

Dopo aver creato, salvato e pubblicato correttamente il runbook di PowerShell, seguire questa procedura per eseguirlo in futuro:

  1. Nella pagina Account di Automazione in https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccountsselezionare l'account di Automazione.
  2. Nel riquadro a comparsa dei dettagli visualizzato iniziare a digitare "Runbook" nell'icona Cerca.Casella di ricerca e quindi selezionare Runbook dai risultati.
  3. Nel riquadro a comparsa Runbook visualizzato selezionare il runbook.
  4. Nella pagina dei dettagli del runbook selezionare Avvia.

Connettersi a Exchange Online PowerShell usando macchine virtuali di Azure con identità gestita assegnata dal sistema

In una finestra Windows PowerShell nella macchina virtuale di Azure usare il comando come descritto all'inizio di questa sezione. Ad esempio:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com

Connettersi a Exchange Online PowerShell usando l'identità gestita assegnata dall'utente

Dopo aver creato e configurato un'identità gestita assegnata dall'utente, usare la sintassi seguente per connettersi a Exchange Online PowerShell:

Connect-ExchangeOnline -ManagedIdentity -Organization <YourDomain>.onmicrosoft.com -ManagedIdentityAccountId <UserAssignedManagedIdentityClientIdValue>

È possibile ottenere il <valore UserAssignedManagedIdentityClientIdValue> da Passaggio 3: Archiviare l'identità gestita assegnata dall'utente in una variabile.

Il resto di questa sezione illustra come connettersi usando le risorse di Azure supportate. Ad esempio:

  • Runbook di PowerShell nell'account Automazione di Azure con identità gestita assegnata dall'utente.
  • Una macchina virtuale di Azure con un'identità gestita assegnata dall'utente.

Dopo aver connesso la risorsa, i Exchange Online cmdlet e parametri di PowerShell sono disponibili in base al ruolo controllo degli accessi in base al ruolo assegnato nel passaggio 6: Assegnare i ruoli Microsoft Entra all'identità gestita.

Connettersi a Exchange Online PowerShell usando account Automazione di Azure con identità gestite assegnate dall'utente

Creare un runbook di PowerShell nell'account di automazione. Per istruzioni, vedere Gestire i runbook in Automazione di Azure.

Il primo comando nel runbook di PowerShell deve essere il Connect-ExchangeOnline... comando come descritto all'inizio di questa sezione. Ad esempio:

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com -ManagedIdentityAccountId bf6dcc76-4331-4942-8d50-87ea41d6e8a1

È possibile ottenere il valore ManagedIdentityAccount dal passaggio 3: Archiviare l'identità gestita assegnata dall'utente in una variabile.

Successivamente, come test, è possibile iniziare con un comando semplice e a basso impatto nel runbook prima di passare a comandi o script più complessi. Ad esempio:

Get-AcceptedDomain | Format-Table Name

Dopo aver creato correttamente il runbook di PowerShell, seguire questa procedura per eseguirlo in futuro:

  1. Nella pagina Account di Automazione in https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccountsselezionare l'account di Automazione.
  2. Nel riquadro a comparsa dei dettagli visualizzato iniziare a digitare "Runbook" nell'icona Cerca.Casella di ricerca e quindi selezionare Runbook dai risultati.
  3. Nel riquadro a comparsa Runbook visualizzato selezionare il runbook.
  4. Nella pagina dei dettagli del runbook selezionare Avvia.

Connettersi a Exchange Online PowerShell usando macchine virtuali di Azure con identità gestite assegnate dal sistema

In una finestra Windows PowerShell nella macchina virtuale di Azure usare il comando come descritto all'inizio di questa sezione. Ad esempio:

$MI_ID = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").ClientId

Connect-ExchangeOnline -ManagedIdentity -Organization contoso.onmicrosoft.com -ManagedIdentityAccountId $MI_ID

Creare e configurare un'identità gestita assegnata dal sistema

Ecco come procedere:

  1. (Facoltativo) Creare una risorsa con l'identità gestita assegnata dal sistema
  2. Archiviare l'identità gestita assegnata dal sistema in una variabile
  3. Aggiungere il modulo Exchange Online PowerShell all'identità gestita
  4. Concedere all'API Exchange.ManageAsApp l'autorizzazione per l'identità gestita per chiamare Exchange Online
  5. Assegnare Microsoft Entra ruoli all'identità gestita

Dopo aver completato i passaggi, è possibile connettersi a Exchange Online PowerShell usando l'identità gestita assegnata dal sistema.

Passaggio 1: Creare una risorsa con l'identità gestita assegnata dal sistema

Se si intende usare una risorsa esistente già configurata con l'identità gestita assegnata dal sistema, è possibile passare al passaggio successivo. Sono supportati i tipi di risorse seguenti:

  • account Automazione di Azure
  • Macchine virtuali di Azure (VM)

Creare account Automazione di Azure con identità gestite assegnate dal sistema

Creare un account di Automazione configurato per l'identità gestita assegnata dal sistema usando le istruzioni riportate in Avvio rapido: Creare un account di Automazione usando il portale di Azure.

Per creare l'account di Automazione con l'identità gestita assegnata dal sistema in Azure PowerShell, seguire questa procedura:

  1. Connettersi ad Azure Az PowerShell eseguendo il comando seguente:

    Connect-AzAccount
    
  2. Se necessario, creare un gruppo di risorse di Azure da usare con l'account di Automazione eseguendo il comando seguente:

    New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
    
    • <ResourceGroupName> è il nome univoco per il nuovo gruppo di risorse.
    • <Location> è un valore valido del comando: Get-AzLocation | Format-Table Name.

    Ad esempio:

    New-AzResourceGroup -Name "ContosoRG" -Location "West US"
    

    Per istruzioni complete, vedere Creare gruppi di risorse.

  3. Usare la sintassi seguente per creare un account di Automazione con identità gestita assegnata dal sistema:

    New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignSystemIdentity
    
    • <AutomationAccountName> è il nome univoco per il nuovo account di Automazione.
    • <ResourceGroupName> è il nome del gruppo di risorse esistente che si vuole usare. I valori validi sono visibili nell'output del comando: Get-AzResourceGroup.
    • <Location> è un valore valido del comando: Get-AzLocation | Format-Table Name.

    Ad esempio:

    New-AzAutomationAccount -Name "ContosoAzAuto1" -ResourceGroupName "ContosoRG" -Location "West US" -AssignSystemIdentity
    

    Per informazioni dettagliate sulla sintassi e sui parametri, vedere New-AzAutomationAccount.

Configurare le macchine virtuali di Azure con identità gestite assegnate dal sistema

Per istruzioni, vedere gli articoli seguenti:

Passaggio 2: Archiviare l'identità gestita assegnata dal sistema in una variabile

Usare la sintassi seguente per archiviare il valore ID (GUID) dell'identità gestita in una variabile che verrà usata nei passaggi successivi in Azure Az PowerShell.

$MI_ID = (Get-AzADServicePrincipal -DisplayName "<ResourceName>").Id

Dove <ResourceName> è il nome dell'account Automazione di Azure o della macchina virtuale di Azure. Ad esempio:

$MI_ID = (Get-AzADServicePrincipal -DisplayName "ContosoAzAuto1").Id

Per verificare che la variabile sia stata acquisita correttamente, eseguire il comando $MI_ID. L'output deve essere un valore GUID (ad esempio, 9f164909-3007-466e-a1fe-28d20b16e2c2).

Per informazioni dettagliate sulla sintassi e sui parametri, vedere Get-AzADServicePrincipal.

Passaggio 3: Aggiungere il modulo Exchange Online PowerShell all'identità gestita

Aggiungere il modulo Exchange Online PowerShell agli account Automazione di Azure con identità gestite assegnate dal sistema

Consiglio

Se la procedura seguente nel portale di Azure non funziona, provare il comando New-AzAutomationModule in Azure PowerShell descritto dopo la procedura di portale di Azure.

  1. Nella pagina Account di Automazione in https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccountsselezionare l'account di Automazione.

  2. Nel riquadro a comparsa dei dettagli visualizzato iniziare a digitare "Moduli" nell'icona Cerca.Casella di ricerca e quindi selezionare Moduli dai risultati.

  3. Nel riquadro a comparsa Moduli visualizzato selezionare Aggiungi icona del modulo.Aggiungere un modulo.

  4. Nella pagina Aggiungi modulo visualizzata configurare le impostazioni seguenti:

    • Caricare un file di modulo: selezionare Sfoglia dalla raccolta.
    • File del modulo di PowerShell: selezionare Fare clic qui per passare dalla raccolta:
      1. Nella pagina Sfoglia raccolta visualizzata iniziare a digitare "ExchangeOnlineManagement" nell'icona Cerca.Casella di ricerca , premere INVIO e quindi selezionare ExchangeOnlineManagement dai risultati.
      2. Nella pagina dei dettagli visualizzata selezionare Seleziona per tornare alla pagina Aggiungi modulo .
    • Versione di runtime: selezionare 5.1 o 7.1 (anteprima). Per aggiungere entrambe le versioni, ripetere i passaggi in questa sezione per aggiungere e selezionare l'altra versione di runtime per il modulo.

    Al termine, selezionare Importa.

    Screenshot dell'aggiunta di un modulo a un account di Automazione nel portale di Azure.

  5. Tornare al riquadro a comparsa Moduli e iniziare a digitare "ExchangeOnlineManagement" nell'icona Cerca.Casella di ricerca per visualizzare il valore Stato . Al termine dell'importazione del modulo, il valore è Disponibile.

Per aggiungere il modulo all'account di Automazione in Azure PowerShell, usare la sintassi seguente:

New-AzAutomationModule -ResourceGroupName "<ResourceGroupName>" -AutomationAccountName "<AutomationAccountName>" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/<LatestModuleVersion>
  • <ResourceGroupName> è il nome del gruppo di risorse già assegnato all'account di Automazione.
  • <AutomationAccountName> è il nome dell'account di Automazione.
  • <LatestModuleVersion> è la versione corrente del modulo ExchangeOnlineManagement. Per visualizzare la versione più recente di disponibilità generale del modulo, eseguire il comando seguente in Windows PowerShell: Find-Module ExchangeOnlineManagement. Per visualizzare la versione di anteprima più recente, eseguire il comando seguente: Find-Module ExchangeOnlineManagement -AllowPrerelease.
  • Attualmente, le procedure di PowerShell non offrono una scelta per la versione di runtime (è 5.1).

Ad esempio:

New-AzAutomationModule -ResourceGroupName "ContosoRG" -AutomationAccountName "ContosoAzAuto1" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/3.1.0

Per verificare che il modulo sia stato importato correttamente, eseguire il comando seguente:

Get-AzAutomationModule -ResourceGroupName ContosoRG -AutomationAccountName ContosoAzAuto1 -Name ExchangeOnlineManagement

Durante l'importazione, la proprietà ProvisioningState avrà il valore Creating. Al termine dell'importazione del modulo, il valore verrà modificato in Operazione completata.

Per informazioni dettagliate sulla sintassi e sui parametri, vedere New-AzAutomationModule.

Aggiungere il modulo Exchange Online PowerShell alle macchine virtuali di Azure con identità gestite assegnate dal sistema

Installare il modulo Exchange Online PowerShell nella macchina virtuale di Azure. Per istruzioni, vedere Installare e gestire il modulo Exchange Online PowerShell.

Passaggio 4: Concedere all'API Exchange.ManageAsApp l'autorizzazione per l'identità gestita per chiamare Exchange Online

Le procedure descritte in questo passaggio richiedono Microsoft Graph PowerShell SDK. Per istruzioni sull'installazione, vedere Installare Microsoft Graph PowerShell SDK.

  1. Eseguire il comando seguente per connettersi a Microsoft Graph PowerShell con le autorizzazioni necessarie:

    Connect-MgGraph -Scopes AppRoleAssignment.ReadWrite.All,Application.Read.All
    

    Se viene visualizzata una finestra di dialogo Autorizzazioni richieste, selezionare Consenso per conto dell'organizzazione e quindi fare clic su Accetta.

  2. Eseguire il comando seguente per verificare che la risorsa Office 365 Exchange Online sia disponibile in Microsoft Entra ID:

    Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'"
    

    Se il comando non restituisce alcun risultato, il passaggio successivo non funzionerà. Vedere la sottosezione alla fine di questa sezione per risolvere il problema prima di continuare.

  3. Eseguire i comandi seguenti per concedere all'API Exchange.ManageAsApp l'autorizzazione per l'identità gestita per chiamare 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 è il valore ID (GUID) dell'identità gestita archiviata in una variabile nel passaggio 2.
    • $AppRoleID è il valore ID (GUID) dell'autorizzazione API Exchange.ManageAsApp uguale in ogni organizzazione.
    • $ResourceIDè il valore ID (GUID) della risorsa Office 365 Exchange Online in Microsoft Entra ID. Il valore AppId è lo stesso in ogni organizzazione, ma il valore id è diverso in ogni organizzazione.

Per informazioni dettagliate sulla sintassi e sui parametri, vedere gli articoli seguenti:

Cosa fare se la risorsa Office 365 Exchange Online non è disponibile in Microsoft Entra ID

Se il comando seguente non restituisce alcun risultato:

Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'"

Seguire questa procedura:

  1. Registrare un'applicazione in Microsoft Entra ID come descritto in Passaggio 1: Registrare l'applicazione in Microsoft Entra ID.
  2. Assegnare all'applicazione l'autorizzazione per l'API > Exchange.ManageAsApp Office 365 Exchange Online usando il metodo "Modificare il manifesto dell'app" come descritto in Passaggio 2: Assegnare autorizzazioni API all'applicazione.

Dopo aver eseguito questi passaggi, eseguire di nuovo il comando Get-MgServicePrincipal per verificare che la risorsa Office 365 Exchange Online sia disponibile in Microsoft Entra ID.

Per altre informazioni, eseguire il comando seguente per verificare che l'autorizzazione API Exchange.ManageAsApp (dc50a0fb-09a3-484d-be87-e023b12c6440) sia disponibile nella risorsa Office 365 Exchange Online:

Get-MgServicePrincipal -Filter "AppId eq '00000002-0000-0ff1-ce00-000000000000'" | Select-Object -ExpandProperty AppRoles | Format-Table Value,Id

Ora che la risorsa Office 365 Exchange Online è disponibile, tornare al passaggio 4.3 in questa sezione.

Passaggio 5: Assegnare ruoli Microsoft Entra all'identità gestita

I ruoli Microsoft Entra supportati sono descritti nell'elenco seguente:

*I ruoli Amministratore globale e amministratore di Exchange forniscono le autorizzazioni necessarie per qualsiasi attività in PowerShell per Exchange Online. Ad esempio:

  • Gestione destinatari.
  • Funzionalità di sicurezza e protezione. Ad esempio, protezione da posta indesiderata, antimalware, anti-phishing e i report associati.

Il ruolo di amministratore della sicurezza non dispone delle autorizzazioni necessarie per le stesse attività.

Per istruzioni generali sull'assegnazione di ruoli in Microsoft Entra ID, vedere Assegnare ruoli Microsoft Entra agli utenti.

  1. In Interfaccia di amministrazione di Microsoft Entra in iniziare a https://portal.azure.com/digitare ruoli e amministratori nella casella Di ricerca nella parte superiore della pagina e quindi selezionare Microsoft Entra ruoli e amministratori dai risultati nella sezione Servizi.

    Screenshot che mostra Microsoft Entra ruoli e amministratori nei risultati della ricerca nella home page del portale di Azure.

    In alternativa, per passare direttamente alla pagina Microsoft Entra ruoli e amministratori, usare https://portal.azure.com/#view/Microsoft_AAD_IAM/AllRolesBlade.

  2. Nella pagina Ruoli e amministratori individuare e selezionare uno dei ruoli supportati facendo clic sul nome del ruolo (non sulla casella di controllo) nei risultati. Ad esempio, trovare e selezionare il ruolo di amministratore di Exchange .

    Trovare e selezionare un ruolo PowerShell per Exchange Online supportato facendo clic sul nome del ruolo.

  3. Nella pagina Assegnazioni visualizzata selezionare Aggiungi assegnazioni.

    Selezionare Aggiungi assegnazioni nella pagina con le assegnazioni dei ruoli per PowerShell per Exchange Online.

  4. Nel riquadro a comparsa Aggiungi assegnazioni visualizzato individuare e selezionare l'identità gestita creata o identificata nel passaggio 1.

    Al termine, selezionare Aggiungi.

  5. Tornare alla pagina Assegnazioni verificare che il ruolo sia stato assegnato all'identità gestita.

Per assegnare un ruolo all'identità gestita in Microsoft Graph PowerShell, seguire questa procedura:

  1. Eseguire il comando seguente per connettersi a Microsoft Graph PowerShell con le autorizzazioni necessarie:

    Connect-MgGraph -Scopes RoleManagement.ReadWrite.Directory
    

    Se viene visualizzata una finestra di dialogo Autorizzazioni richieste, selezionare Consenso per conto dell'organizzazione e quindi fare clic su Accetta.

  2. Usare la sintassi seguente per assegnare il ruolo di Microsoft Entra necessario all'identità gestita:

    $RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq '<Role Name>'").Id
    
    New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
    
    • <Role Name> è il nome del ruolo Microsoft Entra elencato in precedenza in questa sezione.
    • $MI_ID è il valore ID (GUID) dell'identità gestita archiviata in una variabile nel passaggio 2.

    Ad esempio:

    $RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq 'Exchange Administrator'").Id
    
    New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
    

Per informazioni dettagliate sulla sintassi e sui parametri, vedere gli articoli seguenti:

Creare e configurare un'identità gestita assegnata dall'utente

Ecco come procedere:

  1. (Facoltativo) Creare un'identità gestita assegnata dall'utente
  2. (Facoltativo) Creare una risorsa con un'identità gestita assegnata dall'utente
  3. Archiviare l'identità gestita assegnata dall'utente in una variabile
  4. Aggiungere il modulo Exchange Online PowerShell all'identità gestita
  5. Concedere all'API Exchange.ManageAsApp l'autorizzazione per l'identità gestita per chiamare Exchange Online
  6. Assegnare Microsoft Entra ruoli all'identità gestita

Dopo aver completato i passaggi, è possibile connettersi a Exchange Online PowerShell usando l'identità gestita assegnata dall'utente.

Passaggio 1: Creare un'identità gestita assegnata dall'utente

Se si dispone già di un'identità gestita assegnata dall'utente che si intende usare, è possibile passare al passaggio successivo per creare una risorsa con l'identità gestita assegnata dall'utente.

In caso contrario, creare l'identità gestita assegnata dall'utente nel portale di Azure usando le istruzioni riportate in Creare un'identità gestita assegnata dall'utente.

Per creare l'identità gestita assegnata dall'utente in Azure PowerShell, seguire questa procedura:

  1. Connettersi ad Azure Az PowerShell eseguendo il comando seguente:

    Connect-AzAccount
    
  2. Se necessario, creare un gruppo di risorse di Azure da usare con l'identità gestita assegnata dall'utente eseguendo il comando seguente:

    New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
    
    • <ResourceGroupName> è il nome univoco per il nuovo gruppo di risorse.
    • <Location> è un valore valido del comando: Get-AzLocation | Format-Table Name.

    Ad esempio:

    New-AzResourceGroup -Name "ContosoRG2" -Location "West US"
    

    Per istruzioni complete, vedere Creare gruppi di risorse.

  3. Usare la sintassi seguente per creare un'identità gestita assegnata dall'utente:

    New-AzUserAssignedIdentity -Name "<UserAssignedManagedIdentityName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>"
    
    • <UserAssignedManagedIdentityName> è il nome univoco per l'identità gestita assegnata dall'utente.
    • <ResourceGroupName> è il nome del gruppo di risorse esistente che si vuole usare. I valori validi sono visibili nell'output del comando: Get-AzResourceGroup.
    • <Location> è un valore valido del comando: Get-AzLocation | Format-Table Name.

    Ad esempio:

    New-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2" -Location "West US"
    

    Per informazioni dettagliate sulla sintassi e sui parametri, vedere New-AzUserAssignedIdentity.

Passaggio 2: Creare una risorsa con identità gestita assegnata dall'utente

Se si intende usare una risorsa esistente già configurata con l'identità gestita assegnata dall'utente, è possibile passare al passaggio successivo. Sono supportati i tipi di risorse seguenti:

  • account Automazione di Azure
  • Azure Macchine virtuali (VM)

Creare account Automazione di Azure con identità gestite assegnate dall'utente

Creare un account di Automazione configurato per l'identità gestita assegnata dall'utente usando le istruzioni riportate in Guida introduttiva: Creare un account di Automazione usando il portale di Azure.

Per creare l'account di Automazione con l'identità gestita assegnata dall'utente in Azure PowerShell, seguire questa procedura:

  1. Connettersi ad Azure Az PowerShell eseguendo il comando seguente:

    Connect-AzAccount
    
  2. Usare la sintassi seguente per creare un account di Automazione con identità gestita assegnata dall'utente:

    $UAMI = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").Id
    
    New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignUserIdentity $UAMI
    
    • <UserAssignedMI> è il nome dell'identità gestita assegnata dall'utente che si vuole usare.
    • <MIResourceGroupName> è il nome del gruppo di risorse assegnato all'identità gestita assegnata dall'utente. I valori validi sono visibili nell'output del comando: Get-AzResourceGroup.
    • <AutomationAccountName> è il nome univoco per il nuovo account di Automazione.
    • <ResourceGroupName> è il nome del gruppo di risorse che si vuole usare, che potrebbe essere lo stesso valore di <MIResourceGroupName>.
    • <Location> è un valore valido del comando: Get-AzLocation | Format-Table Name.

    Ad esempio:

    $UAMI = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").Id
    
    New-AzAutomationAccount -Name "ContosoAzAuto2" -ResourceGroupName "ContosoRG2" -Location "West US" -AssignUserIdentity $UAMI
    

    Per informazioni dettagliate sulla sintassi e sui parametri, vedere New-AzAutomationAccount.

Configurare le macchine virtuali di Azure con identità gestite assegnate dall'utente

Per istruzioni, vedere gli articoli seguenti:

Passaggio 3: Archiviare l'identità gestita assegnata dall'utente in una variabile

Usare la sintassi seguente in Azure Az PowerShell per archiviare il valore ClientId dell'identità gestita assegnata dall'utente nella variabile che verrà usata nei passaggi successivi:

$MI_ID = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").ClientId
  • <UserAssignedMI> è il nome dell'identità gestita assegnata dall'utente.
  • <MIResourceGroupName> è il nome del gruppo di risorse associato all'identità gestita assegnata dall'utente.

Ad esempio:

$MI_ID = (Get-AzUserAssignedIdentity -Name "ContosoMI1" -ResourceGroupName "ContosoRG2").ClientId

Per verificare che la variabile sia stata acquisita correttamente, eseguire il comando $MI_ID. L'output deve essere un valore GUID(ad esempio, bf6dcc76-4331-4942-8d50-87ea41d6e8a1).

Per informazioni dettagliate sulla sintassi e sui parametri, vedere Get-AzUserAssignedIdentity.

Passaggio 4: Aggiungere il modulo Exchange Online PowerShell all'identità gestita

I passaggi per l'identità gestita assegnata dall'utente sono gli stessi del passaggio 3 dell'identità gestita assegnata dal sistema.

Nota

Assicurarsi di usare i valori corretti per il nome del gruppo di risorse e il nome dell'account di automazione.

Passaggio 5: Concedere all'API Exchange.ManageAsApp l'autorizzazione per l'identità gestita per chiamare Exchange Online

I passaggi per l'identità gestita assegnata dall'utente sono gli stessi descritti nel passaggio 4 dell'identità gestita assegnata dal sistema.

Anche se i valori identity gestiti sono stati ottenuti in modo diverso per l'assegnazione dell'utente rispetto a quella assegnata dal sistema, viene usato lo stesso nome di variabile nel comando ($MI_ID), quindi il comando funziona per entrambi i tipi di identità gestite.

Passaggio 6: Assegnare ruoli Microsoft Entra all'identità gestita

I passaggi per l'identità gestita assegnata dall'utente sono fondamentalmente gli stessi del passaggio 5 dell'identità gestita assegnata dal sistema.

Nel portale di Azure assicurarsi di selezionare l'identità gestita assegnata dall'utente come identità gestita a cui assegnare il ruolo Microsoft Entra (non l'account di automazione stesso).

Il comando di PowerShell funziona sia per le identità gestite assegnate dall'utente che per le identità gestite assegnate dal sistema. Anche se i valori identity gestiti sono stati ottenuti in modo diverso per l'assegnazione dell'utente rispetto a quella assegnata dal sistema, viene usato lo stesso nome di variabile nel comando ($MI_ID).