Service-principalrollen beheren
Als u de toegang tot uw Azure-resources wilt beperken, kunt u een service-principal gebruiken om roltoewijzingen te beheren. Elke rol biedt verschillende machtigingen die de gebruiker heeft toegestaan bij het openen van Azure-resources. In deze stap in de zelfstudie wordt uitgelegd hoe u service-principalrollen maakt en verwijdert.
De Azure CLI heeft de volgende opdrachten voor het beheren van roltoewijzingen:
Een roltoewijzing maken of verwijderen
De rol Inzender heeft volledige machtigingen voor lezen en schrijven naar een Azure-account. De rol Lezer is beperkter met alleen-lezentoegang. Gebruik altijd het principe van minimale bevoegdheden. Zie ingebouwde Azure-rollen voor een volledige lijst met beschikbare rollen in Azure RBAC.
Als u een rol toevoegt, worden eerder toegewezen machtigingen niet beperkt. In dit voorbeeld wordt de rol Lezer toegevoegd en wordt de rol Inzender verwijderd:
az role assignment create --assignee myServicePrincipalID \
--role Reader \
--scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
az role assignment delete --assignee myServicePrincipalID \
--role Contributor \
--scope /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName
Uitvoerconsole:
{
"condition": null,
"conditionVersion": null,
"createdBy": null,
"createdOn": "yyyy-mm-ddT00:00:00.000000+00:00",
"delegatedManagedIdentityResourceId": null,
"description": null,
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleAssignments/00000000-0000-0000-0000-000000000000",
"name": "00000000-0000-0000-0000-000000000000",
"principalId": "00000000-0000-0000-0000-000000000000",
"principalType": "ServicePrincipal",
"roleDefinitionId": "/subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.Authorization/roleDefinitions/00000000-0000-0000-0000-000000000000",
"scope": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroupName",
"type": "Microsoft.Authorization/roleAssignments",
"updatedBy": "00000000-0000-0000-0000-000000000000",
"updatedOn": "yyyy-mm-ddT00:00:00.000000+00:00"
}
Een waarde ophalen voor de bereikparameter
Een vraag die u mogelijk hebt, is 'Hoe kan ik de parameterwaarde kennen--scope
?' Het antwoord is het zoeken en kopiƫren van de resource-id van de Azure-resource die uw service-principal nodig heeft voor toegang. Deze informatie vindt u meestal op de pagina Eigenschappen of Eindpunten van de Azure-portal van elke resource. Hier volgen veelvoorkomende --scope
voorbeelden, maar vertrouw op uw resource-id voor een werkelijke indeling en waarde.
Bereik | voorbeeld |
---|---|
Abonnement | /subscriptions/mySubscriptionID |
Resourcegroep | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName |
Virtuele machine | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Compute/virtualMachines/myVMname |
Opslagaccountbestandsservice | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.Storage/storageAccounts/myStorageAccountName/fileServices/default |
Data factory | /subscriptions/mySubscriptionID/resourceGroups/myResourceGroupName/providers/Microsoft.DataFactory/factories/myDataFactoryName |
Zie Inzicht in het bereik voor Azure RBAC voor meer bereikvoorbeelden.
Wijzigingen controleren
De wijzigingen kunnen worden geverifieerd door de toegewezen rollen in een lijst weer te geven:
# list all role assignments for the current subscription
az role assignment list ---output table
# list role assignments for a user
az role assignment list --assignee myUserName@contoso.com
# list role assignments for a subscription
az role assignment list --subscription mySubscriptionID
U kunt ook naar Azure Portal gaan en de rol handmatig toewijzen aan de service-principal vanuit het menu Toegangsbeheer (IAM). Zie Lijst met Azure-roltoewijzingen met behulp van Azure CLI voor meer voorbeelden over het weergeven van roltoewijzingen.
Volgende stappen
Nu u hebt geleerd hoe u uw service-principal-rollen beheert, gaat u verder met de volgende stap om te leren hoe u service-principals gebruikt om een resource te maken.