Partilhar via


Utilizar identidades geridas do Azure para ligar ao PowerShell do Exchange Online

Com o módulo Exchange Online do PowerShell V3, pode ligar-se ao PowerShell do Exchange Online com uma identidade gerida do Azure atribuída pelo utilizador ou pelo sistema. Para obter mais informações sobre identidades geridas, veja O que são identidades geridas para recursos do Azure?.

Ao contrário de outros métodos de ligação que utilizam o módulo powerShell do Exchange Online, não pode executar os comandos de ligação numa sessão do Windows PowerShell no seu computador local. Em vez disso, liga-se no contexto do recurso do Azure associado à identidade gerida (por exemplo, uma conta de automatização do Azure ou uma Máquina Virtual do Azure).

O resto deste artigo explica como ligar com a identidade gerida e os requisitos para criar e configurar os recursos adequados com identidades geridas no Azure.

Observação

No PowerShell do Exchange Online, não é possível usar os procedimentos neste artigo com os seguintes cmdlets do Grupo do Microsoft 365:

Pode utilizar o Microsoft Graph para substituir a maioria das funcionalidades desses cmdlets. Para obter mais informações, consulte Trabalhar com grupos no Microsoft Graph.

As ligações à API REST no módulo V3 requerem os módulos PowerShellGet e PackageManagement. Para obter mais informações, veja PowerShellGet para ligações baseadas em REST no Windows.

Ligar ao PowerShell do Exchange Online com a identidade gerida atribuída pelo sistema

Depois de Criar e configurar uma identidade gerida atribuída pelo sistema, utilize a seguinte sintaxe para ligar ao PowerShell do Exchange Online:

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

Por exemplo:

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

O resto desta secção explica como ligar com os recursos suportados do Azure. Por exemplo:

  • Um runbook do PowerShell na conta de Automatização do Azure com identidade gerida atribuída pelo sistema.
  • Uma VM do Azure com uma identidade gerida atribuída pelo sistema.

Depois de o recurso estar ligado, os cmdlets e parâmetros do PowerShell do Exchange Online estão disponíveis com base na função RBAC que atribuiu no Passo 5: Atribuir funções do Microsoft Entra à identidade gerida

Ligar ao PowerShell do Exchange Online com contas de Automatização do Azure com a identidade gerida atribuída pelo sistema

Crie um runbook do PowerShell na conta de automatização. Para obter instruções, veja Gerir runbooks na Automatização do Azure.

O primeiro comando no runbook do PowerShell tem de ser o Connect-ExchangeOnline... comando conforme descrito no início desta secção. Por exemplo:

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

Depois disso, como um teste, pode começar com um comando simples e de baixo impacto no runbook antes de avançar para comandos ou scripts mais complexos. Por exemplo:

Get-AcceptedDomain | Format-Table Name

Depois de criar, guardar e publicar com êxito o runbook do PowerShell, siga os seguintes passos para executá-lo no futuro:

  1. Na página Contas de automatização em https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts, selecione a conta de Automatização.
  2. Na lista de opções de detalhes que é aberta, comece a escrever "Runbooks" no ícone Procurar.Caixa de pesquisa e, em seguida, selecione Runbooks nos resultados.
  3. Na lista de opções Runbooks que é aberta, selecione o runbook.
  4. Na página de detalhes do runbook, selecione Iniciar.

Ligar ao PowerShell do Exchange Online com VMs do Azure com identidade gerida atribuída pelo sistema

Numa janela do Windows PowerShell na VM do Azure, utilize o comando conforme descrito no início desta secção. Por exemplo:

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

Ligar ao PowerShell do Exchange Online com a identidade gerida atribuída pelo utilizador

Depois de criar e configurar uma identidade gerida atribuída pelo utilizador, utilize a seguinte sintaxe para ligar ao PowerShell do Exchange Online:

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

Obtém o <valor UserAssignedManagedIdentityClientIdValue> no Passo 3: armazenar a identidade gerida atribuída pelo utilizador numa variável.

O resto desta secção explica como ligar com os recursos suportados do Azure. Por exemplo:

  • Um runbook do PowerShell na conta de Automatização do Azure com a identidade gerida atribuída pelo utilizador.
  • Uma VM do Azure com uma identidade gerida atribuída pelo utilizador.

Depois de o recurso estar ligado, os cmdlets e parâmetros do PowerShell do Exchange Online estão disponíveis com base na função RBAC que atribuiu no Passo 6: Atribuir funções do Microsoft Entra à identidade gerida.

Ligar ao PowerShell do Exchange Online com contas de Automatização do Azure com identidades geridas atribuídas pelo utilizador

Crie um runbook do PowerShell na conta de automatização. Para obter instruções, veja Gerir runbooks na Automatização do Azure.

O primeiro comando no runbook do PowerShell tem de ser o Connect-ExchangeOnline... comando conforme descrito no início desta secção. Por exemplo:

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

Obtém o valor ManagedIdentityAccount no Passo 3: armazenar a identidade gerida atribuída pelo utilizador numa variável.

Depois disso, como um teste, pode começar com um comando simples e de baixo impacto no runbook antes de avançar para comandos ou scripts mais complexos. Por exemplo:

Get-AcceptedDomain | Format-Table Name

Depois de criar o runbook do PowerShell com êxito, siga os seguintes passos para executá-lo no futuro:

  1. Na página Contas de automatização em https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts, selecione a conta de Automatização.
  2. Na lista de opções de detalhes que é aberta, comece a escrever "Runbooks" no ícone Procurar.Caixa de pesquisa e, em seguida, selecione Runbooks nos resultados.
  3. Na lista de opções Runbooks que é aberta, selecione o runbook.
  4. Na página de detalhes do runbook, selecione Iniciar.

Ligar ao PowerShell do Exchange Online com VMs do Azure com identidades geridas atribuídas pelo sistema

Numa janela do Windows PowerShell na VM do Azure, utilize o comando conforme descrito no início desta secção. Por exemplo:

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

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

Criar e configurar uma identidade gerida atribuída pelo sistema

As etapas são:

  1. (Opcional) Criar um recurso com a identidade gerida atribuída pelo sistema
  2. Armazenar a identidade gerida atribuída pelo sistema numa variável
  3. Adicionar o módulo do PowerShell do Exchange Online à identidade gerida
  4. Conceder a permissão da API Exchange.ManageAsApp para a identidade gerida chamar o Exchange Online
  5. Atribuir funções do Microsoft Entra à identidade gerida

Depois de concluir os passos, está pronto para Ligar ao PowerShell do Exchange Online com a identidade gerida atribuída pelo sistema.

Passo 1: criar um recurso com a identidade gerida atribuída pelo sistema

Se pretender utilizar um recurso existente que já esteja configurado com a identidade gerida atribuída pelo sistema, pode avançar para o passo seguinte. São suportados os seguintes tipos de recursos:

  • Contas de Automatização do Azure
  • Máquinas virtuais (VMs) do Azure

Criar contas de Automatização do Azure com identidades geridas atribuídas pelo sistema

Crie uma conta de Automatização configurada para a identidade gerida atribuída pelo sistema com as instruções em Início Rápido: Criar uma conta de Automatização com o portal do Azure.

Para criar a conta de Automatização com a identidade gerida atribuída pelo sistema no Azure PowerShell, efetue os seguintes passos:

  1. Ligue-se ao Azure Az PowerShell ao executar o seguinte comando:

    Connect-AzAccount
    
  2. Se necessário, crie um grupo de recursos do Azure para utilizar com a conta de Automatização ao executar o seguinte comando:

    New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
    
    • <ResourceGroupName> é o nome exclusivo do novo grupo de recursos.
    • <A localização> é um valor válido do comando: Get-AzLocation | Format-Table Name.

    Por exemplo:

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

    Para obter instruções completas, veja Criar grupos de recursos.

  3. Utilize a seguinte sintaxe para criar uma conta de Automatização com a identidade gerida atribuída pelo sistema:

    New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignSystemIdentity
    
    • <AutomationAccountName> é o nome exclusivo da nova conta de Automatização.
    • <ResourceGroupName> é o nome do grupo de recursos existente que pretende utilizar. Os valores válidos são visíveis na saída do comando: Get-AzResourceGroup.
    • <A localização> é um valor válido do comando: Get-AzLocation | Format-Table Name.

    Por exemplo:

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

    Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja New-AzAutomationAccount.

Configurar VMs do Azure com identidades geridas atribuídas pelo sistema

Para obter instruções, consulte os seguintes artigos:

Passo 2: armazenar a identidade gerida atribuída pelo sistema numa variável

Utilize a seguinte sintaxe para armazenar o valor de ID (GUID) da identidade gerida numa variável que irá utilizar nos próximos passos no Azure Az PowerShell.

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

Em <que ResourceName> é o nome da conta de Automatização do Azure ou da VM do Azure. Por exemplo:

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

Para verificar se a variável foi capturada com êxito, execute o comando $MI_ID. O resultado deve ser um valor GUID (por exemplo, 9f164909-3007-466e-a1fe-28d20b16e2c2).

Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja Get-AzADServicePrincipal.

Passo 3: adicionar o módulo do PowerShell do Exchange Online à identidade gerida

Adicionar o módulo do PowerShell do Exchange Online às contas de Automatização do Azure com identidades geridas atribuídas pelo sistema

Dica

Se o procedimento seguinte no portal do Azure não funcionar para si, experimente o comando New-AzAutomationModule no Azure PowerShell descrito após o procedimento do portal do Azure.

  1. Na página Contas de automatização em https://portal.azure.com/#view/HubsExtension/BrowseResource/resourceType/Microsoft.Automation%2FAutomationAccounts, selecione a conta de Automatização.

  2. Na lista de opções de detalhes que é aberta, comece a escrever "Módulos" no ícone Procurar.Caixa de pesquisa e, em seguida, selecione Módulos a partir dos resultados.

  3. Na lista de opções Módulos que é aberta, selecione Adicionar ícone do módulo.Adicione um módulo.

  4. Na página Adicionar um módulo que é aberto, configure as seguintes definições:

    • Carregar um ficheiro de módulo: selecione Procurar na galeria.
    • Ficheiro do módulo do PowerShell: selecione Clique aqui para navegar a partir da galeria:
      1. Na página Procurar galeria que é aberta, comece a escrever "ExchangeOnlineManagement" no ícone Procurar.Caixa de pesquisa, prima Enter e, em seguida, selecione ExchangeOnlineGerir nos resultados.
      2. Na página de detalhes que é aberta, selecione Selecionar para regressar à página Adicionar um módulo .
    • Versão do runtime: selecione 5.1 ou 7.1 (Pré-visualização). Para adicionar ambas as versões, repita os passos nesta secção para adicionar e selecionar a outra versão de runtime para o módulo.

    Quando tiver terminado, selecione Importar.

    Captura de ecrã a mostrar a adição de um módulo a uma conta de Automatização no portal do Azure.

  5. De volta à lista de opções Módulos , comece a escrever "ExchangeOnlineManagement" no ícone Procurar.Caixa de pesquisa para ver o valor Estado . Quando a importação do módulo estiver concluída, o valor estará Disponível.

Para adicionar o módulo à conta de Automatização no Azure PowerShell, utilize a seguinte sintaxe:

New-AzAutomationModule -ResourceGroupName "<ResourceGroupName>" -AutomationAccountName "<AutomationAccountName>" -Name ExchangeOnlineManagement -ContentLinkUri https://www.powershellgallery.com/packages/ExchangeOnlineManagement/<LatestModuleVersion>
  • <ResourceGroupName> é o nome do grupo de recursos que já está atribuído à conta de Automatização.
  • <AutomationAccountName> é o nome da conta de Automatização.
  • <LatestModuleVersion> é a versão atual do módulo ExchangeOnlineManagement. Para ver a versão mais recente de Disponibilidade Geral (GA; não Pré-visualização) do módulo, execute o seguinte comando no Windows PowerShell: Find-Module ExchangeOnlineManagement. Para ver a versão mais recente da Pré-visualização, execute o seguinte comando: Find-Module ExchangeOnlineManagement -AllowPrerelease.
  • Atualmente, os procedimentos do PowerShell não lhe dão uma escolha para a versão de runtime (é 5.1).

Por exemplo:

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

Para verificar se o módulo foi importado com êxito, execute o seguinte comando:

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

Durante a importação, a propriedade ProvisioningState terá o valor Creating. Quando a importação do módulo estiver concluída, o valor será alterado para Com Êxito.

Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja New-AzAutomationModule.

Adicionar o módulo do PowerShell do Exchange Online às VMs do Azure com identidades geridas atribuídas pelo sistema

Instale o módulo do PowerShell do Exchange Online na VM do Azure. Para obter instruções, consulte Instalar e manter o módulo do PowerShell do Exchange Online.

Passo 4: conceder a permissão da API Exchange.ManageAsApp para a identidade gerida chamar o Exchange Online

Os procedimentos neste passo requerem o SDK do PowerShell do Microsoft Graph. Para obter instruções de instalação, veja Instalar o SDK do PowerShell do Microsoft Graph.

  1. Execute o seguinte comando para ligar ao Microsoft Graph PowerShell com as permissões necessárias:

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

    Se for aberta uma caixa de diálogo Permissões pedidas , selecione Consentimento em nome da sua organização e, em seguida, clique em Aceitar.

  2. Execute o seguinte comando para verificar se o recurso do Office 365 Exchange Online está disponível no Microsoft Entra ID:

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

    Se o comando não devolver resultados, o passo seguinte não funcionará. Veja a subsecção no final desta secção para corrigir o problema antes de continuar.

  3. Execute os seguintes comandos para conceder a permissão da API Exchange.ManageAsApp para a identidade gerida chamar o 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 é o valor de ID (GUID) da identidade gerida que armazenou numa variável no Passo 2.
    • $AppRoleID é o valor de ID (GUID) da permissão da API Exchange.ManageAsApp que é igual em todas as organizações.
    • $ResourceID é o valor de ID (GUID) do recurso do Exchange Online do Office 365 no Microsoft Entra ID. O valor appId é o mesmo em todas as organizações, mas o valor do ID é diferente em todas as organizações.

Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja os seguintes artigos:

O que fazer se o recurso do Exchange Online do Office 365 não estiver disponível no Microsoft Entra ID

Se o seguinte comando não devolver resultados:

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

Efetue os seguintes passos:

  1. Registe uma aplicação no Microsoft Entra ID conforme descrito no Passo 1: Registar a aplicação no Microsoft Entra ID.
  2. Atribua a permissão Exchange.ManageAsApp API do Office 365 Exchange Online > à aplicação através do método "Modificar o manifesto da aplicação", conforme descrito no Passo 2: Atribuir permissões de API à aplicação.

Depois de efetuar estes passos, execute novamente o comando Get-MgServicePrincipal para confirmar que o recurso do Office 365 Exchange Online está disponível no Microsoft Entra ID.

Para obter ainda mais informações, execute o seguinte comando para verificar se a permissão da API Exchange.ManageAsApp (dc50a0fb-09a3-484d-be87-e023b12c6440) está disponível no recurso do Exchange Online do Office 365:

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

Agora que o recurso do Office 365 Exchange Online está disponível, regresse ao Passo 4.3 nesta secção.

Passo 5: Atribuir funções do Microsoft Entra à identidade gerida

As funções suportadas do Microsoft Entra estão descritas na seguinte lista:

¹ As funções Administrador Global e Administrador do Exchange fornecem as permissões necessárias para qualquer tarefa no PowerShell do Exchange Online. Por exemplo:

  • Gerenciamento de destinatários.
  • Recursos de proteção e segurança. Por exemplo, relatórios antispam, antimalware, antiphishing e relatórios associados.

A função Administrador de Segurança não tem as permissões necessárias para essas mesmas tarefas.

² A Microsoft recomenda que utilize funções com menos permissões. A utilização de contas com permissões mais baixas ajuda a melhorar a segurança da sua organização. O Administrador Global é uma função altamente privilegiada que deve ser limitada a cenários de emergência quando não for possível usar uma função existente.

Para obter instruções gerais sobre a atribuição de funções no Microsoft Entra ID, consulte Atribuir funções do Microsoft Entra aos utilizadores.

  1. No Centro de administração do Microsoft Entra em https://portal.azure.com/, comece a escrever funções e administradores na caixa Procurar na parte superior da página e, em seguida, selecione Funções e administradores do Microsoft Entra nos resultados na secção Serviços .

    Captura de ecrã que mostra as funções e os administradores do Microsoft Entra nos resultados da Pesquisa na home page do portal do Azure.

    Em alternativa, para aceder diretamente à página funções e administradores do Microsoft Entra , utilize https://portal.azure.com/#view/Microsoft_AAD_IAM/AllRolesBlade.

  2. Na página Funções e administradores , localize e selecione uma das funções suportadas ao clicar no nome da função (não na caixa de verificação) nos resultados. Por exemplo, localize e selecione a função de administrador do Exchange .

    Localize e selecione uma função do PowerShell do Exchange Online com suporte clicando no nome da função.

  3. Na página Atribuições que é aberta, selecione Adicionar tarefas.

    Selecione Adicionar atribuições na página de atribuições de função do PowerShell do Exchange Online.

  4. Na lista de opções Adicionar atribuições que é aberta, localize e selecione a identidade gerida que criou ou identificou no Passo 1.

    Ao terminar, selecione Adicionar.

  5. Novamente na página Atribuições , verifique se a função foi atribuída à identidade gerida.

Para atribuir uma função à identidade gerida no Microsoft Graph PowerShell, siga os seguintes passos:

  1. Execute o seguinte comando para ligar ao Microsoft Graph PowerShell com as permissões necessárias:

    Connect-MgGraph -Scopes RoleManagement.ReadWrite.Directory
    

    Se for aberta uma caixa de diálogo Permissões pedidas , selecione Consentimento em nome da sua organização e, em seguida, clique em Aceitar.

  2. Utilize a seguinte sintaxe para atribuir a função necessária do Microsoft Entra à identidade gerida:

    $RoleID = (Get-MgRoleManagementDirectoryRoleDefinition -Filter "DisplayName eq '<Role Name>'").Id
    
    New-MgRoleManagementDirectoryRoleAssignment -PrincipalId $MI_ID -RoleDefinitionId $RoleID -DirectoryScopeId "/"
    
    • <Nome da Função> é o nome da função Microsoft Entra, conforme listado anteriormente nesta secção.
    • $MI_ID é o valor de ID (GUID) da identidade gerida que armazenou numa variável no Passo 2.

    Por exemplo:

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

Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja os seguintes artigos:

Criar e configurar uma identidade gerida atribuída pelo utilizador

As etapas são:

  1. (Opcional) Criar uma identidade gerida atribuída pelo utilizador
  2. (Opcional) Criar um recurso com a identidade gerida atribuída pelo utilizador
  3. Armazenar a identidade gerida atribuída pelo utilizador numa variável
  4. Adicionar o módulo do PowerShell do Exchange Online à identidade gerida
  5. Conceder a permissão da API Exchange.ManageAsApp para a identidade gerida chamar o Exchange Online
  6. Atribuir funções do Microsoft Entra à identidade gerida

Depois de concluir os passos, está pronto para Ligar ao PowerShell do Exchange Online com a identidade gerida atribuída pelo utilizador.

Passo 1: criar uma identidade gerida atribuída pelo utilizador

Se já tiver uma identidade gerida atribuída pelo utilizador existente que vai utilizar, pode avançar para o passo seguinte para criar um recurso com a identidade gerida atribuída pelo utilizador.

Caso contrário, crie a identidade gerida atribuída pelo utilizador no portal do Azure com as instruções em Criar uma identidade gerida atribuída pelo utilizador.

Para criar a identidade gerida atribuída pelo utilizador no Azure PowerShell, siga os seguintes passos:

  1. Ligue-se ao Azure Az PowerShell ao executar o seguinte comando:

    Connect-AzAccount
    
  2. Se necessário, crie um grupo de recursos do Azure para utilizar com a identidade gerida atribuída pelo utilizador ao executar o seguinte comando:

    New-AzResourceGroup -Name "<ResourceGroupName>" -Location "<Location>"
    
    • <ResourceGroupName> é o nome exclusivo do novo grupo de recursos.
    • <A localização> é um valor válido do comando: Get-AzLocation | Format-Table Name.

    Por exemplo:

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

    Para obter instruções completas, veja Criar grupos de recursos.

  3. Utilize a seguinte sintaxe para criar uma identidade gerida atribuída pelo utilizador:

    New-AzUserAssignedIdentity -Name "<UserAssignedManagedIdentityName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>"
    
    • <UserAssignedManagedIdentityName> é o nome exclusivo da identidade gerida atribuída pelo utilizador.
    • <ResourceGroupName> é o nome do grupo de recursos existente que pretende utilizar. Os valores válidos são visíveis na saída do comando: Get-AzResourceGroup.
    • <A localização> é um valor válido do comando: Get-AzLocation | Format-Table Name.

    Por exemplo:

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

    Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja New-AzUserAssignedIdentity.

Passo 2: criar um recurso com a identidade gerida atribuída pelo utilizador

Se pretender utilizar um recurso existente que já esteja configurado com a identidade gerida atribuída pelo utilizador, pode avançar para o passo seguinte. São suportados os seguintes tipos de recursos:

  • Contas de Automatização do Azure
  • Máquinas Virtuais do Azure (VMs)

Criar contas de Automatização do Azure com identidades geridas atribuídas pelo utilizador

Crie uma conta de Automatização configurada para a identidade gerida atribuída pelo utilizador com as instruções em Início Rápido: Criar uma conta de Automatização com o portal do Azure.

Para criar a conta de Automatização com a identidade gerida atribuída pelo utilizador no Azure PowerShell, efetue os seguintes passos:

  1. Ligue-se ao Azure Az PowerShell ao executar o seguinte comando:

    Connect-AzAccount
    
  2. Utilize a seguinte sintaxe para criar uma conta de Automatização com a identidade gerida atribuída pelo utilizador:

    $UAMI = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").Id
    
    New-AzAutomationAccount -Name "<AutomationAccountName>" -ResourceGroupName "<ResourceGroupName>" -Location "<Location>" -AssignUserIdentity $UAMI
    
    • <UserAssignedMI> é o nome da identidade gerida atribuída pelo utilizador que pretende utilizar.
    • <MIResourceGroupName> é o nome do grupo de recursos atribuído à identidade gerida atribuída pelo utilizador. Os valores válidos são visíveis na saída do comando: Get-AzResourceGroup.
    • <AutomationAccountName> é o nome exclusivo da nova conta de Automatização.
    • <ResourceGroupName> é o nome do grupo de recursos que pretende utilizar, que pode ser o mesmo valor <que MIResourceGroupName>.
    • <A localização> é um valor válido do comando: Get-AzLocation | Format-Table Name.

    Por exemplo:

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

    Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja New-AzAutomationAccount.

Configurar VMs do Azure com identidades geridas atribuídas pelo utilizador

Para obter instruções, consulte os seguintes artigos:

Passo 3: armazenar a identidade gerida atribuída pelo utilizador numa variável

Utilize a seguinte sintaxe no Azure Az PowerShell para armazenar o valor ClientId da identidade gerida atribuída pelo utilizador na variável que irá utilizar nos próximos passos:

$MI_ID = (Get-AzUserAssignedIdentity -Name "<UserAssignedMI>" -ResourceGroupName "<MIResourceGroupName>").ClientId
  • <UserAssignedMI> é o nome da identidade gerida atribuída pelo utilizador.
  • <MIResourceGroupName> é o nome do grupo de recursos associado à identidade gerida atribuída pelo utilizador.

Por exemplo:

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

Para verificar se a variável foi capturada com êxito, execute o comando $MI_ID. O resultado deve ser um valor GUID (por exemplo, bf6dcc76-4331-4942-8d50-87ea41d6e8a1).

Para obter informações detalhadas sobre a sintaxe e os parâmetros, veja Get-AzUserAssignedIdentity.

Passo 4: adicionar o módulo do PowerShell do Exchange Online à identidade gerida

Os passos para a identidade gerida atribuída pelo utilizador são os mesmos que no Passo 3 da identidade gerida atribuída pelo sistema.

Observação

Certifique-se de que utiliza os valores corretos para o nome do grupo de recursos e o nome da conta de automatização!

Passo 5: Conceder a permissão da API Exchange.ManageAsApp para a identidade gerida chamar o Exchange Online

Os passos para a identidade gerida atribuída pelo utilizador são os mesmos que no Passo 4 da identidade gerida atribuída pelo sistema.

Embora os valores de identidade gerida tenham sido obtidos de forma diferente para atribuídos pelo utilizador vs. atribuídos pelo sistema, estamos a utilizar o mesmo nome de variável no comando ($MI_ID), pelo que o comando funciona para ambos os tipos de identidades geridas.

Passo 6: atribuir funções do Microsoft Entra à identidade gerida

Os passos para a identidade gerida atribuída pelo utilizador são basicamente os mesmos que no Passo 5 da identidade gerida atribuída pelo sistema.

No portal do Azure, certifique-se de que seleciona a identidade gerida atribuída pelo utilizador como a identidade gerida à qual atribuir a função Microsoft Entra (e não a própria conta de automatização).

O comando do PowerShell funciona para identidades geridas atribuídas pelo utilizador e atribuídas pelo sistema. Embora os valores de identidade gerida tenham sido obtidos de forma diferente para atribuídos pelo utilizador vs. atribuídos pelo sistema, estamos a utilizar o mesmo nome de variável no comando ($MI_ID).