Poskytnutí přístupu ke klíčům, certifikátům a tajným kódům služby Key Vault pomocí řízení přístupu na základě role v Azure

Poznámka:

Poskytovatel prostředků key Vault podporuje dva typy prostředků: trezory a spravované HSM. Řízení přístupu popsané v tomto článku platí jenom pro trezory. Další informace o řízení přístupu pro spravované HSM najdete v tématu Řízení přístupu spravovaného HSM.

Poznámka:

Aplikace Azure konfigurace certifikátu služby prostřednictvím webu Azure Portal nepodporuje model oprávnění RBAC služby Key Vault. Můžete použít azure PowerShell, Azure CLI, nasazení šablon ARM s přiřazením role uživatele certifikátu služby Key Vault pro globální identitu služby App Service, například Microsoft Aplikace Azure Service ve veřejném cloudu.

Řízení přístupu na základě role v Azure (Azure RBAC) je autorizační systém založený na Azure Resource Manageru , který poskytuje centralizovanou správu přístupu k prostředkům Azure.

Azure RBAC umožňuje uživatelům spravovat oprávnění ke klíči, tajným kódům a certifikátům. Poskytuje jedno místo pro správu všech oprávnění napříč všemi trezory klíčů.

Model Azure RBAC umožňuje uživatelům nastavit oprávnění na různých úrovních rozsahu: skupina pro správu, předplatné, skupina prostředků nebo jednotlivé prostředky. Azure RBAC pro trezor klíčů také umožňuje uživatelům mít samostatná oprávnění k jednotlivým klíčům, tajným klíčům a certifikátům.

Další informace najdete v tématu Řízení přístupu na základě role v Azure (Azure RBAC).

Osvědčené postupy pro přiřazení rolí jednotlivých klíčů, tajných klíčů a certifikátů

Naším doporučením je použít trezor pro každou aplikaci na prostředí (vývoj, předprodukční a produkční) s rolemi přiřazenými v oboru služby Key Vault.

Přiřazování rolí pro jednotlivé klíče, tajné klíče a certifikáty by se mělo vyhnout. Výjimky z obecných pokynů:

  • Scénáře, kdy musí být jednotlivé tajné kódy sdíleny mezi více aplikacemi, například jedna aplikace potřebuje přístup k datům z druhé aplikace

Další informace o pokynech pro správu služby Azure Key Vault najdete tady:

Předdefinované role Azure pro operace roviny dat ve službě Key Vault

Poznámka:

Role Key Vault Contributor je pro operace roviny správy pouze pro správu trezorů klíčů. Nepovoluje přístup ke klíčům, tajným klíčům a certifikátům.

Předdefinovaná role Popis ID
Správa istrator služby Key Vault Proveďte všechny operace roviny dat v trezoru klíčů a všech objektů v něm, včetně certifikátů, klíčů a tajných kódů. Nejde spravovat prostředky trezoru klíčů ani spravovat přiřazení rolí. Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. 00482a5a-887f-4fb3-b363-3b7fe8e74483
Čtenář služby Key Vault Čtení metadat trezorů klíčů a jeho certifikátů, klíčů a tajných kódů Citlivé hodnoty, jako je obsah tajného kódu nebo materiál klíče, nelze číst. Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. 21090545-7ca7-4776-b22c-e363652d74d2
Officer pro certifikáty služby Key Vault Proveďte jakoukoli akci s certifikáty trezoru klíčů s výjimkou oprávnění pro správu. Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. a4417e6f-fecd-4de8-b567-7b0420556985
Uživatel certifikátu služby Key Vault Přečtěte si celý obsah certifikátu, včetně části tajných kódů a klíčů. Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. db79e9a7-68ee-4b58-9aeb-b90e7c24fcba
Kryptografický důstojník key vaultu Proveďte všechny akce s klíči trezoru klíčů s výjimkou oprávnění pro správu. Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. 14b46e9e-c2b7-41b4-b07b-48a6ebf60603
Uživatel šifrování šifrovací služby Key Vault Čtení metadat klíčů a provádění operací zabalení/rozbalení Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. e147488a-f6f5-4113-8e2d-b22465e65bf6
Uživatel kryptografických služeb Key Vault Provádění kryptografických operací pomocí klíčů Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. 12338af0-0e69-4776-bea7-57ae8d297424
Uživatel kryptografických služeb služby Key Vault Klíče vydaných verzí pro důvěrné výpočetní prostředí Azure a ekvivalentní prostředí Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure.
Key Vault Secrets Officer Proveďte jakoukoli akci s tajnými klíči trezoru klíčů s výjimkou oprávnění pro správu. Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. b86a8fe4-44ce-4948-aee5-eccb2c155cd7
Uživatel tajných kódů služby Key Vault Čtení obsahu tajných kódů včetně části tajného kódu certifikátu s privátním klíčem Funguje jenom pro trezory klíčů, které používají model oprávnění Řízení přístupu na základě role v Azure. 4633458b-17de-408a-b874-0445c86b69e6

Další informace o definicích předdefinovaných rolí Azure najdete v tématu Předdefinované role Azure.

Správa předdefinovaných přiřazení rolí roviny dat ve službě Key Vault

Předdefinovaná role Popis ID
Přístup k datům služby Key Vault Správa istrator Přístup ke službě Azure Key Vault můžete spravovat přidáním nebo odebráním přiřazení rolí pro Správa istrator služby Key Vault, správce certifikátů služby Key Vault, šifrovacího důstojníka služby Key Vault, uživatele šifrování služby Key Vault, šifrovacího uživatele služby Key Vault, čtenáře služby Key Vault, tajného klíče služby Key Vault nebo role uživatele tajných kódů služby Key Vault. Zahrnuje podmínku ABAC pro omezení přiřazení rolí. 8b54135c-b56d-4d72-a534-26097cfdc8d8

Použití tajného klíče, klíče a certifikátu Azure RBAC se službou Key Vault

Nový model oprávnění Azure RBAC pro trezor klíčů poskytuje alternativu k modelu oprávnění zásad přístupu k trezoru.

Požadavky

Mít předplatné Azure. Pokud ne, můžete si před zahájením vytvořit bezplatný účet .

Pokud chcete přidat přiřazení rolí, musíte mít Microsoft.Authorization/roleAssignments/write a Microsoft.Authorization/roleAssignments/delete mít oprávnění, jako je přístup k datům služby Key Vault Správa istrator, uživatelský přístup Správa istrator nebo vlastník.

Povolení oprávnění Azure RBAC ve službě Key Vault

Poznámka:

Změna modelu oprávnění vyžaduje oprávnění Microsoft.Authorization/roleAssignments/write, která je součástí rolí Vlastník a Uživatelský přístup Správa istrator. Klasické role správce předplatného, jako je Service Správa istrator a Spolu Správa istrator, se nepodporují.

  1. Povolení oprávnění Azure RBAC pro nový trezor klíčů:

    Povolení oprávnění Azure RBAC – nový trezor

  2. Povolení oprávnění Azure RBAC pro existující trezor klíčů:

    Povolení oprávnění Azure RBAC – existující trezor

Důležité

Nastavení modelu oprávnění Azure RBAC zneplatní všechna oprávnění zásad přístupu. Pokud nejsou přiřazené ekvivalentní role Azure, může to způsobit výpadky.

Přiřazení role

Poznámka:

Místo názvu role ve skriptech se doporučuje použít jedinečné ID role. Proto pokud se role přejmenuje, skripty budou i nadále fungovat. V tomto názvu role dokumentu se používá pouze pro čitelnost.

Pokud chcete vytvořit přiřazení role pomocí Azure CLI, použijte příkaz az role assignment :

az role assignment create --role <role_name_or_id> --assignee <assignee> --scope <scope>

Úplné podrobnosti najdete v tématu Přiřazení rolí Azure pomocí Azure CLI.

Přiřazení role oboru skupiny prostředků

az role assignment create --role "Key Vault Reader" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}

Úplné podrobnosti najdete v tématu Přiřazení rolí Azure pomocí Azure CLI.

Výše uvedené přiřazení role umožňuje vypsat objekty trezoru klíčů v trezoru klíčů.

Přiřazení role oboru služby Key Vault

az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e jalichwa@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}

Úplné podrobnosti najdete v tématu Přiřazení rolí Azure pomocí Azure CLI.

Přiřazení role oboru tajných kódů

Poznámka:

Tajné klíče trezoru klíčů, certifikát, přiřazení rolí oboru klíčů by se měly používat jenom v omezených scénářích popsaných zde , aby byly v souladu s osvědčenými postupy zabezpečení.

az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}/secrets/RBACSecret

Úplné podrobnosti najdete v tématu Přiřazení rolí Azure pomocí Azure CLI.

Testování a ověření

Poznámka:

Prohlížeče po odebrání přiřazení rolí vyžadují ukládání do mezipaměti a aktualizaci stránky.
Počkejte několik minut, než se přiřazení rolí aktualizují.

  1. Ověřte přidání nového tajného kódu bez role "Key Vault Secrets Officer" na úrovni trezoru klíčů.

    1. Přejděte na kartu Řízení přístupu k trezoru klíčů (IAM) a odeberte přiřazení role "Key Vault Secrets Officer" pro tento prostředek.

      Odebrání přiřazení – trezor klíčů

    2. Přejděte k dříve vytvořenému tajnému kódu. Zobrazí se všechny vlastnosti tajných kódů.

      Zobrazení tajných kódů s přístupem

    3. Při vytváření nového tajného kódu (Tajné kódy > + vygenerovat/ import) by se měla zobrazit tato chyba:

      Vytvoření nového tajného kódu

  2. Ověřte úpravy tajných kódů bez role "Key Vault Secret Officer" na úrovni tajných kódů.

    1. Přejděte na dříve vytvořenou kartu Řízení přístupu k tajným kódům (IAM) a odeberte přiřazení role "Key Vault Secrets Officer" pro tento prostředek.

    2. Přejděte k dříve vytvořenému tajnému kódu. Zobrazí se vlastnosti tajného kódu.

      Zobrazení tajných kódů bez přístupu

  3. Ověřte tajné kódy přečtené bez role čtenáře na úrovni trezoru klíčů.

    1. Přejděte na kartu Řízení přístupu ke skupině prostředků trezoru klíčů (IAM) a odeberte přiřazení role Čtenář služby Key Vault.

    2. Při přechodu na kartu Tajné kódy trezoru klíčů by se měla zobrazit tato chyba:

      Karta Tajný kód – chyba

Vytváření vlastních rolí

az role definition create command

az role definition create --role-definition '{ \
   "Name": "Backup Keys Operator", \
   "Description": "Perform key backup/restore operations", \
    "Actions": [ 
    ], \
    "DataActions": [ \
        "Microsoft.KeyVault/vaults/keys/read ", \
        "Microsoft.KeyVault/vaults/keys/backup/action", \
         "Microsoft.KeyVault/vaults/keys/restore/action" \
    ], \
    "NotDataActions": [ 
   ], \
    "AssignableScopes": ["/subscriptions/{subscriptionId}"] \
}'

Další informace o vytváření vlastních rolí najdete v tématech:

Vlastní role Azure

Nejčastější dotazy

Můžu k zajištění izolace aplikačních týmů ve službě Key Vault ve službě Key Vault použít přiřazení modelu přístupu na základě role (RBAC)?

Ne. Model oprávnění RBAC umožňuje přiřadit přístup k jednotlivým objektům ve službě Key Vault uživatelům nebo aplikacím, ale všechny operace správy, jako je řízení přístupu k síti, monitorování a správa objektů, vyžadují oprávnění na úrovni trezoru, která pak zpřístupní zabezpečené informace operátorům napříč týmy aplikací.

Další informace