Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O Azure Key Vault é um serviço na cloud que fornece um armazenamento seguro para segredos, como chaves, palavras-passe e certificados. Este início rápido foca-se no processo de implementação de um modelo do Azure Resource Manager (modelo ARM) para criar um cofre de chaves.
Um modelo do Azure Resource Manager é um arquivo JSON (JavaScript Object Notation) que define a infraestrutura e a configuração do seu projeto. O modelo usa sintaxe declarativa. Você descreve a implantação pretendida sem escrever a sequência de comandos de programação para criar a implantação.
Se o seu ambiente cumpre os pré-requisitos e se está familiarizado com a utilização de modelos ARM, selecione o botão Implementar no Azure. O modelo será aberto no portal do Azure.
Pré-requisitos
Para completar este artigo:
- Se não tiver uma subscrição do Azure, crie uma conta gratuita antes de começar.
Rever o modelo
O modelo utilizado neste início rápido pertence aos Modelos de Início Rápido do Azure.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.42.1.51946",
"templateHash": "5424899472990749957"
}
},
"parameters": {
"keyVaultName": {
"type": "string",
"metadata": {
"description": "Specifies the name of the key vault."
}
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Specifies the Azure location where the key vault should be created."
}
},
"enabledForDeployment": {
"type": "bool",
"defaultValue": false,
"metadata": {
"description": "Specifies whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault."
}
},
"enabledForDiskEncryption": {
"type": "bool",
"defaultValue": false,
"metadata": {
"description": "Specifies whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys."
}
},
"enabledForTemplateDeployment": {
"type": "bool",
"defaultValue": false,
"metadata": {
"description": "Specifies whether Azure Resource Manager is permitted to retrieve secrets from the key vault."
}
},
"tenantId": {
"type": "string",
"defaultValue": "[subscription().tenantId]",
"metadata": {
"description": "Specifies the Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. Get it by using Get-AzSubscription cmdlet."
}
},
"skuName": {
"type": "string",
"defaultValue": "standard",
"allowedValues": [
"standard",
"premium"
],
"metadata": {
"description": "Specifies whether the key vault is a standard vault or a premium vault."
}
},
"secretName": {
"type": "string",
"metadata": {
"description": "Specifies the name of the secret that you want to create."
}
},
"secretValue": {
"type": "securestring",
"metadata": {
"description": "Specifies the value of the secret that you want to create."
}
}
},
"resources": [
{
"type": "Microsoft.KeyVault/vaults",
"apiVersion": "2023-07-01",
"name": "[parameters('keyVaultName')]",
"location": "[parameters('location')]",
"properties": {
"enabledForDeployment": "[parameters('enabledForDeployment')]",
"enabledForDiskEncryption": "[parameters('enabledForDiskEncryption')]",
"enabledForTemplateDeployment": "[parameters('enabledForTemplateDeployment')]",
"enableRbacAuthorization": true,
"tenantId": "[parameters('tenantId')]",
"enableSoftDelete": true,
"softDeleteRetentionInDays": 90,
"enablePurgeProtection": true,
"sku": {
"name": "[parameters('skuName')]",
"family": "A"
},
"networkAcls": {
"defaultAction": "Allow",
"bypass": "AzureServices"
}
}
},
{
"type": "Microsoft.KeyVault/vaults/secrets",
"apiVersion": "2023-07-01",
"name": "[format('{0}/{1}', parameters('keyVaultName'), parameters('secretName'))]",
"properties": {
"value": "[parameters('secretValue')]"
},
"dependsOn": [
"[resourceId('Microsoft.KeyVault/vaults', parameters('keyVaultName'))]"
]
}
],
"outputs": {
"location": {
"type": "string",
"value": "[parameters('location')]"
},
"name": {
"type": "string",
"value": "[parameters('keyVaultName')]"
},
"resourceGroupName": {
"type": "string",
"value": "[resourceGroup().name]"
},
"resourceId": {
"type": "string",
"value": "[resourceId('Microsoft.KeyVault/vaults', parameters('keyVaultName'))]"
}
}
}
No modelo, está definido um recurso do Azure:
-
Microsoft.KeyVault/vaults: criar um cofre de chaves do Azure. O modelo permite a autorização RBAC do Azure (
enableRbacAuthorization: true), a eliminação recuperável e a proteção contra eliminação permanente.
Mais exemplos de modelos Azure Key Vault podem ser encontrados em Azure Quickstart Templates.
Implementar o modelo
Selecione a imagem seguinte para iniciar sessão no Azure e abrir um modelo. O modelo cria um cofre de chaves.
Selecione ou introduza os seguintes valores. A menos que esteja especificado, usa o valor padrão.
- Subscrição: selecione uma subscrição do Azure.
- Grupo de recursos: selecione Criar novo, insira um nome exclusivo para o grupo de recursos e selecione OK.
- Região: selecione um local. Por exemplo, E.U.A. Central.
-
Nome do Cofre: insira um nome para o cofre de chaves, que deve ser globalmente único dentro do
vault.azure.netespaço de nomes. - Nome do SKU: selecione padrão ou premium. A predefinição é standard.
Selecione Rever + criar e, em seguida, selecione Criar. Depois de o cofre de chaves ser implementado com sucesso, recebe uma notificação.
Também pode usar o Azure PowerShell, a CLI do Azure ou a API REST para implementar o template. Para aprender outros métodos de implementação, consulte Deploy templates.
Atribuir uma função RBAC do Key Vault
O cofre de chaves criado por este modelo utiliza o Azure RBAC para autorização. Para criar ou ler chaves, segredos ou certificados no plano de dados, tem de se atribuir a si próprio uma função adequada. Por exemplo, para gerir segredos, atribui-te a função Key Vault Secrets Officer:
echo "Enter your key vault name:" &&
read keyVaultName &&
az role assignment create --role "Key Vault Secrets Officer" \
--assignee-object-id $(az ad signed-in-user show --query id -o tsv) \
--scope $(az keyvault show --name $keyVaultName --query id -o tsv)
Note
Para outras funções incorporadas, veja funções incorporadas do Azure para operações do plano de dados do Key Vault. As atribuições de funções podem demorar um ou dois minutos a ser propagadas.
Analisar os recursos implementados
Pode usar o portal do Azure para consultar o cofre de chaves, ou usar o seguinte script CLI do Azure ou Azure PowerShell:
echo "Enter your key vault name:" &&
read keyVaultName &&
az keyvault show --name $keyVaultName
Limpeza de recursos
Outros guias de início rápido e tutoriais do Key Vault se baseiam nesse início rápido. Se tencionar prosseguir a trabalhar com instruções rápidas e tutoriais subsequentes, convém manter estes recursos. Quando já não for necessário, elimina o grupo de recursos, que elimina o cofre de chaves e os recursos relacionados.
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName
Note
Eliminar o grupo de recursos também elimina o cofre de chaves, mas o cofre entra então num estado de eliminação suave e permanece recuperável durante o período de retenção (90 dias por defeito). O nome do cofre permanece reservado globalmente durante esse período e, como a proteção contra purgas está ativada, o cofre não pode ser purgado antecipadamente. Para cofres de chaves padrão, os cofres eliminados temporariamente não incorrem em custos. Para mais informações, consulte Key Vault visão geral de apagamento suave.
Mais modelos do Key Vault Resource Manager
Outros guias de início rápido explicam como adicionar segredos, chaves ou certificados a um cofre de chaves:
| Segredos | Keys | Certificados |
|---|---|---|
Você pode encontrar mais modelos do Key Vault aqui: Referência do Key Vault Resource Manager.
Passos seguintes
- Leia uma visão geral do Azure Key Vault.
- Consulte a visão geral de segurança Azure Key Vault.
- Aprenda sobre Azure RBAC para Key Vault.
- Autentica-te num cofre de chaves.
- Guia do Desenvolvedor do Azure Key Vault.