Delen via


Beheer van rollen voor beheerde HSM

Opmerking

Key Vault ondersteunt twee typen resources: kluizen en beheerde HSM's. Dit artikel gaat over beheerde HSM. Als u wilt weten hoe u een kluis beheert, raadpleegt u Key Vault beheren met behulp van de Azure CLI.

Dit artikel bevat praktische instructies voor het beheren van rollen en roltoewijzingen voor een beheerde HSM met behulp van de Azure CLI. Het implementeert het op rollen gebaseerde toegangsbeheermodel dat wordt beschreven in Toegangsbeheer voor beheerde HSM met behulp van de ingebouwde rollen die worden beschreven in lokale RBAC-ingebouwde rollen voor beheerde HSM.

Zie Wat is beheerde HSM?voor een overzicht van beheerde HSM. Als u geen Azure-abonnement hebt, maakt u een gratis account voordat u begint.

Als u een beveiligingsprincipal (zoals een gebruiker, een service-principal, groep of een beheerde identiteit) wilt toestaan om bewerkingen op het beheerde HSM-gegevensvlak uit te voeren, moet aan hen een rol worden toegewezen die het uitvoeren van deze bewerkingen toestaat. Als u bijvoorbeeld een toepassing wilt toestaan een tekenbewerking uit te voeren met een sleutel, moet er een rol worden toegewezen die de gegevensactie Microsoft.KeyVault/managedHSM/keys/sign/action bevat. Een rol kan worden toegewezen aan een specifieke omvang. Het lokaal op rollen gebaseerde toegangsbeheer voor beheerde HSM ondersteunt twee reikwijdten: HSM-breed (/ of /keys) en per sleutel (/keys/<keyname>).

Zie Ingebouwde rollen van beheerde HSM voor een lijst met alle ingebouwde HSM-rollen en de bewerkingen die ze toestaan.

Vereiste voorwaarden

Als u de Azure CLI-opdrachten in dit artikel wilt gebruiken, hebt u het volgende nodig:

Azure Cloud Shell

Azure host Azure Cloud Shell, een interactieve shell-omgeving die u via uw browser kunt gebruiken. U kunt Bash of PowerShell met Cloud Shell gebruiken om te werken met Azure-services. U kunt de vooraf geïnstalleerde Cloud Shell-opdrachten gebruiken om de code in dit artikel uit te voeren zonder dat u iets hoeft te installeren in uw lokale omgeving.

Om Azure Cloud Shell op te starten:

Optie Voorbeeld/koppeling
Selecteer Uitproberen in de rechterbovenhoek van een code- of opdrachtblok. Als u Try It selecteert, wordt de code of opdracht niet automatisch gekopieerd naar Cloud Shell. Schermopname van een voorbeeld van Try It for Azure Cloud Shell.
Ga naar https://shell.azure.comof selecteer de knop Cloud Shell starten om Cloud Shell in uw browser te openen. Knop om Azure Cloud Shell te starten.
Selecteer de knop Cloud Shell in de menubalk rechtsboven in Azure Portal. Schermopname van de knop Cloud Shell in Azure Portal

Azure Cloud Shell gebruiken:

  1. Start Cloud Shell.

  2. Selecteer de knop Kopiëren op een codeblok (of opdrachtblok) om de code of opdracht te kopiëren.

  3. Plak de code of opdracht in de Cloud Shell-sessie door Ctrl+Shift+V in Windows en Linux te selecteren of door Cmd+Shift+V te selecteren in macOS.

  4. Selecteer Enter om de code of opdracht uit te voeren.

Aanmelden bij Azure

Als u zich wilt aanmelden bij Azure met behulp van de CLI, typt u:

az login

Zie aanmelden met Azure CLI voor meer informatie over aanmeldingsopties via de CLI

Een nieuwe roltoewijzing maken

Rollen toewijzen voor alle sleutels

Gebruik az keyvault role assignment create de opdracht om een cryptogebruikersrol voor beheerde HSM toe te wijzen aan de gebruiker die is geïdentificeerd door de user principal name user2@contoso.com voor alle sleutels (bereik /keys) in de ContosoHSM.

az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto User" --assignee user2@contoso.com  --scope /keys

Rol toewijzen voor een specifieke sleutel

Gebruik de az keyvault role assignment create opdracht om een cryptogebruikersrol voor beheerde HSM toe te wijzen aan de gebruiker die wordt geïdentificeerd door de user principal name user2@contoso.com voor een specifieke sleutel genaamd myrsakey.

az keyvault role assignment create --hsm-name ContosoMHSM --role "Managed HSM Crypto User" --assignee user2@contoso.com  --scope /keys/myrsakey

Bestaande roltoewijzingen weergeven

Gebruik az keyvault role assignment list om een lijst met roltoewijzingen weer te geven.

Alle roltoewijzingen in de scope / (standaard als er geen scope is opgegeven) voor alle gebruikers (standaard als er geen toegewezene is opgegeven)

az keyvault role assignment list --hsm-name ContosoMHSM

Alle roltoewijzingen op het HSM-niveau voor de specifieke gebruiker user1@contoso.com.

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user@contoso.com

Opmerking

Wanneer het bereik /(of /keys) is, geeft de lijstopdracht alleen alle roltoewijzingen op het hoogste niveau weer en worden geen roltoewijzingen weergegeven op afzonderlijk sleutelniveau.

Alle roltoewijzingen voor een specifieke gebruiker user2@contoso.com voor een specifieke sleutel myrsakey.

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey

Een specifieke roltoewijzing voor de rol Managed HSM Crypto Officer voor een specifieke gebruiker user2@contoso.com voor een specifieke sleutel myrsakey

az keyvault role assignment list --hsm-name ContosoMHSM --assignee user2@contoso.com --scope /keys/myrsakey --role "Managed HSM Crypto Officer"

Een roltoewijzing verwijderen

Gebruik az keyvault role assignment delete de opdracht om een beheerde HSM Crypto Officer-rol te verwijderen die is toegewezen aan de gebruiker user2@contoso.com voor sleutel myrsakey2.

az keyvault role assignment delete --hsm-name ContosoMHSM --role "Managed HSM Crypto Officer" --assignee user2@contoso.com  --scope /keys/myrsakey2

Alle beschikbare roldefinities weergeven

Gebruik de opdracht az keyvault role definition list om alle roldefinities weer te geven.

az keyvault role definition list --hsm-name ContosoMHSM

Een nieuwe roldefinitie maken

Beheerde HSM heeft verschillende ingebouwde (vooraf gedefinieerde) rollen die nuttig zijn voor de meest voorkomende gebruiksscenario's. U kunt uw eigen rol definiëren met een lijst met specifieke acties die door de rol mogen worden uitgevoerd. Vervolgens kunt u deze rol toewijzen aan principals om ze de machtiging te verlenen voor de opgegeven acties.

Gebruik az keyvault role definition create de opdracht voor een rol met de naam Mijn aangepaste rol met behulp van een JSON-tekenreeks.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
    "roleName": "My Custom Role",
    "description": "The description of the custom rule.",
    "actions": [],
    "notActions": [],
    "dataActions": [
        "Microsoft.KeyVault/managedHsm/keys/read/action"
    ],
    "notDataActions": []
}'

Gebruik az keyvault role definition create de opdracht voor een rol uit een bestand met de naammy-custom-role-definition.json met de JSON-tekenreeks voor een roldefinitie. Zie het bovenstaande voorbeeld.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition @my-custom-role-definition.json

Details van een roldefinitie weergeven

Gebruik az keyvault role definition show de opdracht om details van een specifieke roldefinitie te bekijken met behulp van de naam (een GUID).

az keyvault role definition show --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Een aangepaste roldefinitie bijwerken

Gebruik az keyvault role definition update de opdracht om een rol met de naam Mijn aangepaste rol bij te werken met behulp van een JSON-tekenreeks.

az keyvault role definition create --hsm-name ContosoMHSM --role-definition '{
            "roleName": "My Custom Role",
            "name": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "id": "Microsoft.KeyVault/providers/Microsoft.Authorization/roleDefinitions/xxxxxxxx-
        xxxx-xxxx-xxxx-xxxxxxxxxxxx",
            "description": "The description of the custom rule.",
            "actions": [],
            "notActions": [],
            "dataActions": [
                "Microsoft.KeyVault/managedHsm/keys/read/action",
                "Microsoft.KeyVault/managedHsm/keys/write/action",
                "Microsoft.KeyVault/managedHsm/keys/backup/action",
                "Microsoft.KeyVault/managedHsm/keys/create"
            ],
            "notDataActions": []
        }'

Aangepaste roldefinitie verwijderen

Gebruik de Azure CLI az keyvault role definition delete opdracht om een aangepaste roldefinitie te verwijderen met de naam (een GUID).

az keyvault role definition delete --hsm-name ContosoMHSM --name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

Opmerking

Ingebouwde rollen kunnen niet worden verwijderd. Wanneer aangepaste rollen worden verwijderd, worden alle roltoewijzingen die gebruikmaken van die aangepaste rol, ongeldig.

Volgende stappen