Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Servisní principály jsou účty, které nejsou vázané na žádného konkrétního uživatele a kterým můžete přiřadit oprávnění prostřednictvím předdefinovaných rolí. Ověřování pomocí služebního účtu je nejlepší způsob psaní zabezpečených skriptů nebo programů. Umožňuje použít omezení oprávnění i místně uložené statické přihlašovací údaje. Další informace o instančních objektech najdete v tématu Práce s instančními objekty Azure pomocí Azure CLI.
K přihlášení pomocí služebního principála potřebujete:
- Adresa URL nebo název přidružený k instančnímu objektu.
- Tajný klíč klienta služebního objektu nebo certifikát X509 použitý k vytvoření služebního objektu ve formátu PEM.
- Tenant přidružený ke služebnímu principu, buď jako
.onmicrosoft.comdoména nebo jako ID tenanta Microsoft Entra.
Všimněte si dvou důležitých faktů při práci se služebními principy a Azure CLI:
Certifikát musí být připojený k privátnímu klíči v rámci souboru PEM. Příklad formátu souboru PEM najdete v tématu Ověřování na základě certifikátu.
Pokud instanční objekt používá certifikát uložený ve službě Key Vault, musí být privátní klíč tohoto certifikátu dostupný bez přihlášení k Azure. Informace o načtení certifikátu
az loginnajdete v tématu Načtení certifikátu ze služby Key Vault.
Pokud se chcete přihlásit pomocí tajného klíče klienta, použijte následující příkaz:
az login --service-principal --username APP_ID --password CLIENT_SECRET --tenant TENANT_ID
Pokud se chcete přihlásit pomocí certifikátu, použijte následující příkaz:
az login --service-principal --username APP_ID --certificate /path/to/cert.pem --tenant TENANT_ID
Důležité
Chcete-li se vyhnout zobrazení hesla v konzole při interaktivním použití az login , použijte read -s příkaz v části bash.
read -sp "Azure password: " AZ_PASS && echo && az login --service-principal --username <app-id> --password $AZ_PASS --tenant <tenant>
V PowerShellu použijte rutinu Get-Credential .
$AzCred = Get-Credential -UserName <app-id>
az login --service-principal --username $AzCred.UserName --password $AzCred.GetNetworkCredential().Password --tenant <tenant>