Azure-szolgáltatásnév használata jelszóalapú hitelesítéssel

A szolgáltatásnév létrehozása során Ön választhatja ki, hogy az milyen típusú bejelentkezési hitelesítést használjon. Az Azure-szolgáltatásnevekhez kétféle hitelesítés érhető el: jelszóalapú hitelesítés és tanúsítványalapú hitelesítés. A jelszóalapú hitelesítés jól használható a szolgáltatásnevek megismeréséhez, de azt javasoljuk, hogy tanúsítványalapú hitelesítést használjon az alkalmazásokhoz.

Az oktatóanyag ezen lépése azt ismerteti, hogyan használhat egyszerű szolgáltatásjelszót egy Azure-erőforrás eléréséhez.

Jelszóval rendelkező szolgáltatásnév létrehozása

Az az ad sp create-for-rbac alapértelmezett viselkedése egy egyszerű szolgáltatás létrehozása véletlenszerű jelszóval.

az ad sp create-for-rbac --name myServicePrincipalName \
                         --role reader \
                         --scopes /subscriptions/mySubscriptionId/resourceGroups/myResourceGroupName

Kimeneti konzol:

{
  "appId": "myServicePrincipalId",
  "displayName": "myServicePrincipalName",
  "password": "myServicePrincipalPassword",
  "tenant": "myOrganizationTenantId"
}

A jelszóhitelesítéssel rendelkező egyszerű szolgáltatás kimenete tartalmazza a password kulcsot. Győződjön meg arról, hogy másolja ezt az értéket – nem kérhető le. Ha elvesztette a jelszót, állítsa vissza a szolgáltatásnév hitelesítő adatait.

Bejelentkezés egyszerű szolgáltatásnévvel jelszóval

Tesztelje az új szolgáltatásnév hitelesítő adatait és engedélyeit a bejelentkezéssel. A szolgáltatásnévvel való bejelentkezéshez a appId (más néven "szolgáltatásnév azonosítója", "felhasználónév" vagy "hozzárendelt" azonosító) tenantés passworda . Here's an example:

az login --service-principal \
         --username myServicePrincipalId \
         --password myServicePrincipalPassword \
         --tenant myOrganizationTenantID

Ha nem ismeri az Önét appId--tenant, kérje le a az ad sp list parancs használatával.

spID=$(az ad sp list --display-name myServicePrincipalName --query "[].{spID:appId}" --output tsv)
tenantID=$(az ad sp list --display-name myServicePrincipalName --query "[].{tenant:appOwnerOrganizationId}" --output tsv)
echo "Using appId $spID in tenant $tenantID"

az login --service-principal \
         --username $spID \
         --password {paste your password here} \
         --tenant $tenantID

Ha kéttényezős hitelesítést igénylő szervezetben tesztel, a következő hibaüzenet jelenik meg: "... Interaktív hitelesítésre van szükség..." megjelenik. Másik lehetőségként használjon tanúsítványt vagy felügyelt identitást.

Fontos

Ha nem szeretné megjeleníteni a jelszót a konzolon, és interaktívan használja az login , használja a read -s következő parancsot: bash.

read -sp "Azure password: " AZ_PASS && echo && az login --service-principal -u <app-id> -p $AZ_PASS --tenant <tenant>

A PowerShellben használja a Get-Credential parancsmagot.

$AzCred = Get-Credential -UserName <app-id>
az login --service-principal -u $AzCred.UserName -p $AzCred.GetNetworkCredential().Password --tenant <tenant>

Következő lépések

Most, hogy megtanulta, hogyan használhatja a szolgáltatásnevek használatát jelszóval, folytassa a következő lépéssel, hogy megtanulja, hogyan használhatja a szolgáltatásnéveket tanúsítványalapú hitelesítéssel.