Aanmelden met een service-principal met behulp van Azure CLI
Service-principals zijn accounts die niet zijn gekoppeld aan een bepaalde gebruiker, waarvoor machtigingen kunnen zijn toegewezen via vooraf gedefinieerde rollen. Verificatie met een service-principal is de beste manier om beveiligde scripts of programma's te schrijven. U kunt hiermee zowel machtigingsbeperkingen als lokaal opgeslagen, statische referentiegegevens toepassen. Zie Werken met Azure-service-principals met behulp van de Azure CLI voor meer informatie over service-principals.
Voor aanmelding met een service-principal hebt u het volgende nodig:
- De URL of naam die gekoppeld is aan de service-principal.
- Het wachtwoord van de service-principal of het X509-certificaat voor het maken van de service-principal in PEM-indeling.
- De tenant die gekoppeld is aan de service-principal als een
.onmicrosoft.com
-domein of een Azure-object-ID
Let op twee belangrijke feiten bij het werken met service-principals en de Azure CLI:
Een CERTIFICAAT moet worden toegevoegd aan de PERSOONLIJKE SLEUTEL in een PEM-bestand. Zie Verificatie op basis van certificaten voor een voorbeeld van een PEM-bestandsindeling.
Als uw service-principal een certificaat gebruikt dat is opgeslagen in Key Vault, moet de persoonlijke sleutel van dat certificaat beschikbaar zijn zonder u aan te melden bij Azure. Zie Certificaat ophalen uit Key Vault om het certificaat voor
az login
op te halen.
az login --service-principal -u <app-id> -p <password-or-cert> --tenant <tenant>
Belangrijk
Als u wilt voorkomen dat uw wachtwoord in de console wordt weergegeven en az login
interactief gebruikt, gebruikt u de read -s
-opdracht onder bash
.
read -sp "Azure password: " AZ_PASS && echo && az login --service-principal -u <app-id> -p $AZ_PASS --tenant <tenant>
Gebruik de Get-Credential
cmdlet onder PowerShell.
$AzCred = Get-Credential -UserName <app-id>
az login --service-principal -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password --tenant <tenant>