Správa rolí pro Managed HSM

Poznámka:

Key Vault podporuje dva typy prostředků: trezory a spravované HSM. Tento článek se týká spravovaného HSM. Pokud chcete zjistit, jak spravovat trezor, přečtěte si téma Správa služby Key Vault pomocí Azure CLI.

Přehled spravovaného HSM najdete v tématu Co je Managed HSM?. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

V tomto článku se dozvíte, jak spravovat role pro rovinu dat spravovaného HSM. Další informace o modelu řízení přístupu spravovaného HSM najdete v tématu Řízení přístupu spravovaného HSM.

Aby mohl objekt zabezpečení (například uživatel, instanční objekt, skupina nebo spravovaná identita) provádět operace spravované roviny dat HSM, musí mít přiřazenou roli, která povoluje provádění těchto operací. Pokud například chcete aplikaci povolit provádění operace podepisování pomocí klíče, musí mít přiřazenou roli, která obsahuje akci Microsoft.KeyVault/managedHSM/keys/sign/action. Roli je možné přiřadit v určitém oboru. Místní řízení přístupu na základě role spravovaného HSM podporuje dva obory, rozsahy HSM (/ nebo /keys) a na klíč (/keys/<keyname>).

Seznam všech předdefinovaných rolí spravovaného HSM a operací, které umožňují, najdete v tématu Předdefinované role spravovaného HSM.

Požadavky

Pokud chcete použít příkazy Azure CLI v tomto článku, musíte mít následující položky:

Azure Cloud Shell

Azure hostí interaktivní prostředí Azure Cloud Shell, které můžete používat v prohlížeči. Pro práci se službami Azure můžete v prostředí Cloud Shell použít buď Bash, nebo PowerShell. Předinstalované příkazy Cloud Shellu můžete použít ke spuštění kódu v tomto článku, aniž byste museli instalovat cokoli do místního prostředí.

Spuštění služby Azure Cloud Shell:

Možnost Příklad nebo odkaz
Vyberte Vyzkoušet v pravém horním rohu bloku kódu nebo příkazu. Výběrem možnosti Vyzkoušet se kód ani příkaz automaticky nekopíruje do Cloud Shellu. Snímek obrazovky znázorňující příklad možnosti Vyzkoušet pro Azure Cloud Shell
Přejděte na adresu https://shell.azure.com nebo výběrem tlačítka Spustit Cloud Shell otevřete Cloud Shell v prohlížeči. Tlačítko pro spuštění Azure Cloud Shellu
Zvolte tlačítko Cloud Shell v pruhu nabídky v pravém horním rohu webu Azure Portal. Snímek obrazovky znázorňující tlačítko Cloud Shell na webu Azure Portal

Použití Azure Cloud Shellu:

  1. Spusťte Cloud Shell.

  2. Výběrem tlačítka Kopírovat v bloku kódu (nebo bloku příkazů) zkopírujte kód nebo příkaz.

  3. Vložte kód nebo příkaz do relace Cloud Shellu tak, že ve Windows a Linuxu vyberete ctrl+Shift+V nebo vyberete Cmd+Shift+V v macOS.

  4. Stisknutím klávesy Enter spusťte kód nebo příkaz.

Přihlášení k Azure

Pokud se chcete přihlásit k Azure pomocí rozhraní příkazového řádku, můžete zadat:

az login

Další informace o možnostech přihlášení prostřednictvím rozhraní příkazového řádku najdete v tématu Přihlášení pomocí Azure CLI.

Vytvoření nového přiřazení role

Přiřazení rolí pro všechny klíče

Pomocí az keyvault role assignment create příkazu přiřaďte roli spravovaného uživatele crypto HSM uživateli identifikovanému hlavním názvem user2@contoso.com uživatele pro všechny klíče (obor /keys) v ContosoHSM.

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

Přiřazení role pro konkrétní klíč

Pomocí az keyvault role assignment create příkazu přiřaďte roli spravovaného kryptografického uživatele HSM uživateli identifikovanému hlavním názvem user2@contoso.com uživatele pro konkrétní klíč s názvem myrsakey.

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

Výpis existujících přiřazení rolí

Slouží az keyvault role assignment list k výpisu přiřazení rolí.

Všechna přiřazení rolí v oboru / (výchozí nastavení, pokud není zadán žádný --scope) pro všechny uživatele (výchozí nastavení, pokud není zadán žádný --assignee)

az keyvault role assignment list --hsm-name ContosoMHSM

Všechna přiřazení rolí na úrovni HSM pro konkrétního uživatele user1@contoso.com.

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

Poznámka:

Pokud je obor / (nebo /keys), příkaz seznamu zobrazí pouze všechna přiřazení rolí na nejvyšší úrovni a nezobrazuje přiřazení rolí na úrovni jednotlivých klíčů.

Všechna přiřazení rolí pro konkrétního uživatele user2@contoso.com pro určitý klíč myrsakey.

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

Konkrétní přiřazení role pro kryptografický pracovník spravovaného HSM pro konkrétního uživatele user2@contoso.com pro konkrétní klíč myrsakey

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

Odstranění přiřazení role

Pomocí az keyvault role assignment delete příkazu odstraňte roli spravovaného kryptografického důstojníka HSM přiřazenou uživateli user2@contoso.com pro klíč myrsakey2.

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

Výpis všech dostupných definic rolí

Pomocí az keyvault role definition list příkazu zobrazíte seznam všech definic rolí.

az keyvault role definition list --hsm-name ContosoMHSM

Vytvoření nové definice role

Spravovaný HSM má několik předdefinovaných rolí, které jsou užitečné pro nejběžnější scénáře použití. Můžete definovat vlastní roli se seznamem konkrétních akcí, které může role provádět. Tuto roli pak můžete přiřadit objektům zabezpečení, abyste jim udělili oprávnění k zadaným akcím.

Použijte az keyvault role definition create příkaz k roli s názvem Moje vlastní role pomocí řetězce JSON.

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": []
}'

Použijte az keyvault role definition create příkaz k roli ze souboru s názvem my-custom-role-definition.json obsahující řetězec JSON pro definici role. Viz příklad výše.

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

Zobrazení podrobností definice role

Pomocí az keyvault role definition show příkazu zobrazíte podrobnosti o konkrétní definici role pomocí názvu (GUID).

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

Aktualizace definice vlastní role

Pomocí az keyvault role definition update příkazu aktualizujte roli s názvem Moje vlastní role pomocí řetězce JSON.

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": []
        }'

Odstranit definice rolí

Pomocí az keyvault role definition delete příkazu zobrazíte podrobnosti o konkrétní definici role pomocí názvu (GUID).

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

Poznámka:

Předdefinované role nelze odstranit. Po odstranění vlastních rolí se všechna přiřazení rolí, která používají danou vlastní roli, přestanou používat.

Další kroky