Rychlý start: Vytvoření trezoru klíčů Azure a klíče pomocí šablony ARM
Azure Key Vault je cloudová služba, která poskytuje zabezpečené úložiště tajných kódů, jako jsou klíče, hesla a certifikáty. Tento rychlý start se zaměřuje na proces nasazení šablony Azure Resource Manager (šablony ARM) pro vytvoření trezoru klíčů a klíče.
Požadavky
Postup pro dokončení tohoto článku:
- Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
- Uživatel musí mít přiřazenou předdefinovanou roli Azure, doporučenou roli přispěvatele. Další informace najdete tady.
Kontrola šablony
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vaultName": {
"type": "string",
"metadata": {
"description": "The name of the key vault to be created."
}
},
"keyName": {
"type": "string",
"metadata": {
"description": "The name of the key to be created."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "The location of the resources"
}
},
"skuName": {
"type": "string",
"defaultValue": "standard",
"allowedValues": [
"standard",
"premium"
],
"metadata": {
"description": "The SKU of the vault to be created."
}
},
"keyType": {
"type": "string",
"defaultValue": "RSA",
"allowedValues": [
"EC",
"EC-HSM",
"RSA",
"RSA-HSM"
],
"metadata": {
"description": "The JsonWebKeyType of the key to be created."
}
},
"keyOps": {
"type": "array",
"defaultValue": [],
"metadata": {
"description": "The permitted JSON web key operations of the key to be created."
}
},
"keySize": {
"type": "int",
"defaultValue": 2048,
"metadata": {
"description": "The size in bits of the key to be created."
}
},
"curveName": {
"type": "string",
"defaultValue": "",
"allowedValues": [
"",
"P-256",
"P-256K",
"P-384",
"P-521"
],
"metadata": {
"description": "The JsonWebKeyCurveName of the key to be created."
}
}
},
"resources": [
{
"type": "Microsoft.KeyVault/vaults",
"apiVersion": "2021-11-01-preview",
"name": "[parameters('vaultName')]",
"location": "[parameters('location')]",
"properties": {
"accessPolicies": [],
"enableRbacAuthorization": true,
"enableSoftDelete": true,
"softDeleteRetentionInDays": "90",
"enabledForDeployment": false,
"enabledForDiskEncryption": false,
"enabledForTemplateDeployment": false,
"tenantId": "[subscription().tenantId]",
"sku": {
"name": "[parameters('skuName')]",
"family": "A"
},
"networkAcls": {
"defaultAction": "Allow",
"bypass": "AzureServices"
}
}
},
{
"type": "Microsoft.KeyVault/vaults/keys",
"apiVersion": "2021-11-01-preview",
"name": "[format('{0}/{1}', parameters('vaultName'), parameters('keyName'))]",
"properties": {
"kty": "[parameters('keyType')]",
"keyOps": "[parameters('keyOps')]",
"keySize": "[parameters('keySize')]",
"curveName": "[parameters('curveName')]"
},
"dependsOn": [
"[resourceId('Microsoft.KeyVault/vaults', parameters('vaultName'))]"
]
}
],
"outputs": {
"proxyKey": {
"type": "object",
"value": "[reference(resourceId('Microsoft.KeyVault/vaults/keys', parameters('vaultName'), parameters('keyName')))]"
}
}
}
V šabloně jsou definované dva prostředky:
Další ukázky šablon Azure Key Vault najdete v tématu Šablony azure pro rychlý start.
Parametry a definice
parametr | Definice |
---|---|
keyOps | Určuje operace, které lze provádět pomocí klíče. Pokud tento parametr nezadáte, je možné provést všechny operace. Přijatelné hodnoty pro tento parametr jsou čárkami oddělený seznam operací s klíči definovaný specifikací JWK (JSON Web Key):["sign", "verify", "encrypt", "decrypt", " wrapKey", "unwrapKey"] |
Název křivky | Název eliptické křivky (EC) pro typ klíče EC. Viz JsonWebKeyCurveName. |
Kty | Typ klíče, který chcete vytvořit. Platné hodnoty najdete v tématu JsonWebKeyType. |
Značky | Metadata specifická pro aplikaci ve formě párů klíč-hodnota. |
Nbf | Určuje čas jako objekt DateTime, před kterým nelze klíč použít. Formát by byl unixové časové razítko (počet sekund po unixové epoche 1. ledna 1970 v UTC). |
Exp | Určuje čas vypršení platnosti jako objekt DateTime. Formát by byl unixové časové razítko (počet sekund po unixové epoche 1. ledna 1970 v UTC). |
Nasazení šablony
Můžete použít Azure Portal, Azure PowerShell, Azure CLI nebo REST API. Další informace o metodách nasazení najdete v tématu Nasazení šablon.
Kontrola nasazených prostředků
Pomocí Azure Portal můžete zkontrolovat trezor klíčů a klíč. Případně použijte následující Azure CLI nebo Azure PowerShell skript k výpisu vytvořeného klíče.
echo "Enter your key vault name:" &&
read keyVaultName &&
az keyvault key list --vault-name $keyVaultName &&
echo "Press [ENTER] to continue ..."
Vytvoření klíče pomocí šablony ARM se liší od vytvoření klíče prostřednictvím roviny dat.
Vytvoření klíče prostřednictvím ARM
Je možné vytvořit pouze nové klíče. Není možné aktualizovat existující klíče ani vytvářet nové verze existujících klíčů. Pokud už klíč existuje, načte se existující klíč z úložiště a použije se (neprovedou se žádné operace zápisu).
Aby volající mohl toto rozhraní API používat, musí mít akci Řízení přístupu na základě role (RBAC) Microsoft.KeyVault/vaults/keys/write . Předdefinovaná role Přispěvatel Key Vault je dostatečná, protože autorizuje všechny akce RBAC, které odpovídají vzoru Microsoft.KeyVault/*.
Existující rozhraní API (vytvoření klíče prostřednictvím roviny dat)
- Je možné vytvářet nové klíče, aktualizovat stávající klíče a vytvářet nové verze existujících klíčů.
- Volající musí mít oprávnění k používání tohoto rozhraní API. Pokud trezor používá zásady přístupu, volající musí mít oprávnění k vytvoření klíče. Pokud je trezor povolený pro RBAC, volající musí mít RBAC DataAction Microsoft.KeyVault/vaults/keys/create/action.
Vyčištění prostředků
Další rychlé starty a kurzy týkající se služby Key Vault vycházejí z tohoto rychlého startu. Pokud chcete pokračovat v práci s dalšími rychlými starty a kurzy, možná budete chtít tyto prostředky zachovat. Až nebudete prostředky potřebovat, odstraňte jejich skupinu. Tím odstraníte Key Vault i související prostředky. Odstranění skupiny prostředků pomocí Azure CLI nebo Azure PowerShell:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Další kroky
V tomto rychlém startu jste vytvořili trezor klíčů a klíč pomocí šablony ARM a ověřili jste nasazení. Další informace o Key Vault a Azure Resource Manager najdete v těchto článcích.
- Přečtěte si přehled Azure Key Vault
- Další informace o Azure Resource Manageru
- Přehled zabezpečení Key Vault
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro