Connectar no Azure via CLI utilizando um Service Principal

Service Principal são contas que não estão associadas a nenhum usuário específico e por meio de funções predefinidas podemos restringir as permissões. As ferramentas automatizadas que usam os serviços do Azure sempre devem ter permissões restritas. Em vez de aplicativos entrarem como um usuário totalmente privilegiado, o Azure oferece o Service Principal.

Um Service Principal do Azure é uma identidade de serviço criada para uso com aplicativos, serviços hospedados e ferramentas automatizadas para acessar recursos do Azure. Por razões de segurança, é sempre recomendável usar Service Principal com ferramentas automatizadas em vez de permitir que elas façam login com uma identidade de usuário.

Os passos a seguir irá demonstrar como:

1 – Criar um Service Principal pelo Portal do Azure
2 – Configurar o Service Principal em uma Subscription
3 – Conectar no Azure utilizando o Service Principal, criar um Resource Group e um Azure Key Vault.

1 – Criar um Service Principal no Azure

Criamos um Service Principal a partir do Microsoft Entra ID

Pesquisamos por: Microsoft Entra ID

Na console do Microsoft Entra ID vamos em App registrations > New registration

Daremos o nome de sp_connection e clicamos no botão Register.

Nossa Service Principal foi criada e iremos criar nossa secret.

Vamos em Certificates & secrets > New client secret

Damos um nome a nossa secret. Para nosso exemplo ficou como secret mesmo. Clicamos no botão Add.

Assim que adicionamos o nome da secret no passo anterior, iremos retornar para a tela onde teremos o Valor da secret. Clicamos no ícone de copiar e colamos em um bloco de notas. Depois salve-o o arquivo da secret em um lugar seguro.

Atenção, se sairmos dessa tela sem copiar a secret e depois voltar novamente, não iremos conseguir copiar o valor da secret! Por isso é importante a etapa de copiar antes de sair da página que temos o valor da secret.

Caso isso aconteça, teremos que deletar e criar a secret novamente.

2 – Configurar Service Principal na Subscription

Com o Service Principal criado, precisaremos configurar essa entidade em uma subscription para que ela possa criar os recursos. Nessa fase que definiremos o tipo de permissão.

Adicionar o Service Principal com a função de Contributor da Subscription.

Vamos em Subscriptions e clicamos na subscription que você quer que o Service Principal possa administrar os recursos

Vamos em Access control (IAM) > Add > Add role assignment

Vamos em Privileged administrator roles > selecionamos Contributor

Iremos adicionar a conta de Service Principal

Pesquisamos pela sp_connection

E finalmente clicamos em:

3 – Conectar no Azure utilizando nosso Service Principal via CLI.

Primeiro precisaremos obter nosso Tenant ID, Client ID e o valor da nossa secret criada no passo anterior.

Conseguimos essas informações dentro de Overview do Service Principal.

Abrimos um sessão do PowerShell e digitamos o comando abaixo, substituindo pelas informações do seu tenant.

az login – -service-principal – -t <Tenant-ID> -u <Client-ID> -p <Client-secret>

Listar as subscriptions:

az account list

Selecionar a subscription que iremos atuar

az account set -s <Subscription-ID>

Vamos criar um Resource Group para um Key Vault

az group create – -name “rg-key-vault-eastus-001” – -location “eastus”

No portal já visualizamos o Resource Group

Iremos criar o Key Vault:

az keyvault create – -name “key-vault-exemplo-01″ – -resource-group ” rg-key-vault-eastus-001″ – -location “eastus”

No portal já Podemos visualizar nosso Key Vault

Criar a secret no key vault

az keyvault secret set – -vault-name “key-vault-exemplo-01” – -name “secret01” – -value “P@ssw0rd1234”

Para visualizar nossa secret o usuário logado no portal do Azure deverá ter uma Access Policies criada para permitir a visualização.

Pelo portal já podemos visualizar nossa secret

Os passos acima irão ajudá-lo a iniciar a criação de recursos ou configuração de ambientes no Azure via CLI. Primeiramente é sempre importante saber como logar corretamente no Azure utilizando um Service Principal em vez de suas próprias credenciais.

Para mais informações visite o link:

Entre com a CLI do Azure usando uma entidade de serviço | Microsoft Learn

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *