Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Key Vault is een cloudservice die een beveiligd archief biedt voor geheimen, zoals sleutels, wachtwoorden en certificaten. Deze quickstart gaat over het implementeren van een Azure Resource Manager-sjabloon (ARM-sjabloon) om een Key Vault en een key te maken.
Vereiste voorwaarden
Ga als volgt te werk om dit artikel te voltooien:
- Als je geen Azure-abonnement hebt, maak dan een gratis account aan voordat je begint.
- De gebruiker moet een ingebouwde Azure-rol toegewezen krijgen, aanbevolen rol contributor. Klik hier voor meer informatie
De sjabloon controleren
{
"$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')))]"
}
}
}
Er worden twee resources gedefinieerd in de sjabloon:
Meer Voorbeelden van Azure Key Vault-sjablonen vindt u in Azure Quickstart-sjablonen.
Parameters en definities
| Kenmerk | Definition |
|---|---|
| keyOps | Hiermee geeft u bewerkingen op die kunnen worden uitgevoerd met behulp van de sleutel. Als u deze parameter niet opgeeft, kunnen alle bewerkingen worden uitgevoerd. De acceptabele waarden voor deze parameter zijn een door komma's gescheiden lijst met sleutelbewerkingen, zoals gedefinieerd door de JSON-specificatie (JWK):["sign", "verify", "encrypt", "decrypt", " wrapKey", "unwrapKey"] |
| CurveName | Elliptische curvenaam (EC) voor EC-sleuteltype. Zie JsonWebKeyCurveName |
| Kty | Het type sleutel dat moet worden gemaakt. Zie JsonWebKeyType voor geldige waarden |
| tags | Toepassingsspecifieke metagegevens in de vorm van sleutel-waardeparen. |
| nbf | Hiermee specificeert u de tijd, als een DateTime-object, vóór welke de sleutel niet kan worden gebruikt. Het formaat is een Unix-tijdstempel (het aantal seconden na Unix Epoch op 1 januari 1970 in UTC). |
| Exp | Hiermee geeft u de verlooptijd op als een DateTime-object. Het formaat is een Unix-tijdstempel (het aantal seconden na Unix Epoch op 1 januari 1970 in UTC). |
De sjabloon implementeren
U kunt Azure Portal, Azure PowerShell, Azure CLI of REST API gebruiken. Zie Sjablonen implementeren voor meer informatie over implementatiemethoden.
Geïmplementeerde middelen beoordelen
U kunt de Azure-portal gebruiken om de sleutelkluis en de sleutel te controleren. U kunt ook het volgende Azure CLI- of Azure PowerShell-script gebruiken om de gemaakte sleutel weer te geven.
echo "Enter your key vault name:" &&
read keyVaultName &&
az keyvault key list --vault-name $keyVaultName &&
echo "Press [ENTER] to continue ..."
Het maken van een sleutel met behulp van een ARM-sjabloon verschilt van het maken van een sleutel via het gegevensvlak
Een sleutel maken via ARM
Het is alleen mogelijk nieuwe sleutels te maken. Het is niet mogelijk om bestaande sleutels bij te werken en geen nieuwe versies van bestaande sleutels te maken. Als de sleutel al bestaat, wordt de bestaande sleutel opgehaald uit de opslag en gebruikt (er worden geen schrijfbewerkingen uitgevoerd).
Om geautoriseerd te zijn voor het gebruik van deze API, moet de aanroeper beschikken over de rolgebaseerde toegangscontrole-actie (Azure RBAC) "Microsoft.KeyVault/vaults/keys/write". De ingebouwde rol Key Vault-inzender is voldoende, omdat hiermee alle Azure RBAC-acties worden geautoriseerd die overeenkomen met het patroon Microsoft.KeyVault/*.
Bestaande API (sleutel maken via gegevensvlak)
- Het is mogelijk om nieuwe sleutels te maken, bestaande sleutels bij te werken en nieuwe versies van bestaande sleutels te maken.
- De aanroeper moet zijn gemachtigd om deze API te kunnen gebruiken. Als de kluis toegangsbeleidinstellingen gebruikt, moet de aanroeper machtiging hebben om sleutels te maken; als de kluis is ingeschakeld voor Azure RBAC, moet de aanroeper de Azure RBAC DataActie 'Microsoft.KeyVault/vaults/keys/create/action' hebben.
De hulpbronnen opschonen
Andere Key Vault-snelstarts en tutorials bouwen voort op deze quickstart. Als u van plan bent om verder te gaan met volgende snelle startgidsen en instructies, kunt u deze resources intact laten. Wanneer u de resourcegroep niet meer nodig hebt, verwijdert u de resourcegroep, waarmee de Sleutelkluis en gerelateerde resources worden verwijderd. Zo verwijdert u de resourcegroep met behulp van Azure CLI of Azure PowerShell:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Volgende stappen
In deze quickstart hebt u een sleutelkluis en een sleutel gemaakt met behulp van een ARM-sjabloon en de implementatie gevalideerd. Zie deze artikelen voor meer informatie over Key Vault en Azure Resource Manager.
- Lees een Overzicht van Azure Key Vault
- Meer informatie over Azure Resource Manager
- Bekijk de Key Vault beveiligingsoverzicht