AzureAD versus Az PowerShell

Olá! Espero que você esteja bem e com saúde.

Revisando o material das aulas do Azure Admin Pro eu encontrei nas documentações oficiais da Microsoft e no material de estudos algumas referências conflitantes no que diz respeito às ferramentas de linha de comando.

Vou dar um exemplo prático: em um determinado momento eu preciso te mostrar como pesquisar usuários do Azure AD filtrando-os por tipo (“Member” ou “Guest”). No material oficial diz que você precisa inicialmente se conectar ao diretório usando o comando Connect-AzAccount (que é um comando do Az PowerShell) conforme imagem abaixo.

Connect-AzAccount

Dependendo da sua configuração você pode perceber que essa linha de comando não está disponível. Tudo bem, vou facilitar pra você compartilhando o link para instalação: https://docs.microsoft.com/en-us/powershell/azure/install-az-ps?view=azps-4.7.0.

Só que… Sempre tem um “só que…”

Você tem que prestar atenção na versão do PowerShell que está instalada, pois dependendo da combinação da versão do PowerShell e dos módulos, não será possível manter o Az PowerShell e o AzureRM simultaneamente. E é provável que você já tenha o AzureRM instalado.

No meu caso eu preferi usar o Az PowerShell que é a recomendação atual e remover por completo o AzureRM. Você pode fazer o mesmo, mas tome cuidado se você tem scripts que usam comandos do AzureRM.

O problema começou quando o material de estudos oficial indicou um link no Docs onde você pode fazer a pesquisa por usuários usando o seguinte comando:

Get-AzureADUser -Filter “UserType eq ‘Member'” (https://docs.microsoft.com/en-us/powershell/module/azuread/get-azureaduser?view=azureadps-2.0).

No meu caso, não tenho mais esse comando.

O comando correspondente no Az PowerShell é o Get-AzADUser:

Só que esse comando não tem o parâmetro -Filter que é um grande facilitador na hora de buscar os resultados com base nos valores das propriedades dos objetos pesquisados.

Como fazer a pesquisa então? Na documentação do Az PowerShell você vai encontrar o seguinte: https://docs.microsoft.com/en-us/powershell/azure/queries-azureps?view=azps-4.7.0.

Você pode usar o controle de saída de informações baseado em Select-Object e também pode filtrar o conteúdo usando o Where-Object.

Neste caso, para conectar ao diretório e listar os usuários membros, o trabalho completo fica assim:

Connect-AzAccount
Get-AzADUser | Where-Object {$_.Type -eq "Member"} | Select DisplayName,UserPrincipalName,UsageLocation,Type

Considere isso...

 

A ideia de escrever esse texto é mostrar como as ferramentas de linha de comando podem causar confusão nessa fase de transição. Vou deixar aqui algumas dicas para que você mantenha sempre em uso as ferramentas recomendadas.

  • Todas as versões dos módulos AzureRM são consideradas ultrapassadas mas por enquanto não estão sem suporte.
  • O módulo Az PowerShell é atualmente o módulo recomendado para interagir com o Azure, portanto deve ser a sua ferramenta principal de trabalho.
  • Há uma ferramenta para migrar automaticamente seus scritps do AzureRM para o Az PowerShell disponível em https://github.com/Azure/azure-powershell-migration.

Bons estudos e até a próxima.

LinkedIn
Share
RSS
Rolar para cima