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.
Azure Key Vault é um serviço na cloud que fornece um armazenamento seguro para segredos, como chaves, palavras-passe, certificados e outros segredos. Este quickstart foca-se no processo de implementação de um template do Azure Resource Manager (template ARM) para criar um cofre de chaves e um segredo.
Um modelo Azure Resource Manager é um ficheiro JavaScript Object Notation (JSON) que define a infraestrutura e 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 cumprir os pré-requisitos e estiver familiarizado com o uso de templates ARM, selecione o botão Deploy to Azure. O modelo abrirá no portal Azure.
Pré-requisitos
Para completar este artigo:
Se não tiver uma subscrição Azure, crie uma conta gratuita antes de começar.
O ID do objeto de utilizador do Microsoft Entra é necessário pelo modelo para configurar permissões. O procedimento a seguir obtém a ID do objeto (GUID).
Execute o comando seguinte Azure PowerShell ou CLI do Azure selecionando Tente, e depois cole o script no painel do shell. Para colar o script, clique com o botão direito do mouse no shell e selecione Colar.
echo "Enter your email address that is used to sign in to Azure:" && read upn && az ad user show --id $upn --query "Id" && echo "Press [ENTER] to continue ..."Anote o ID do objeto. Você precisa dele na próxima seção deste guia de início rápido.
Rever o modelo
Importante
Este início rápido utiliza um modelo externo que cria um repositório com políticas de acesso legadas. Para implementações em produção, use a autorização Azure RBAC em vez disso. Consulte Crie um cofre de chaves usando um modelo ARM para um modelo que utilize enableRbacAuthorization: true, ou consulte Secure your Azure Key Vault para orientações de segurança abrangentes.
O modelo utilizado neste quickstart é do Azure Quickstart Templates.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"metadata": {
"_generator": {
"name": "bicep",
"version": "0.26.54.24096",
"templateHash": "8629186205194254058"
}
},
"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."
}
},
"objectId": {
"type": "string",
"metadata": {
"description": "Specifies the object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID must be unique for the list of access policies. Get it by using Get-AzADUser or Get-AzADServicePrincipal cmdlets."
}
},
"keysPermissions": {
"type": "array",
"defaultValue": [
"list"
],
"metadata": {
"description": "Specifies the permissions to keys in the vault. Valid values are: all, encrypt, decrypt, wrapKey, unwrapKey, sign, verify, get, list, create, update, import, delete, backup, restore, recover, and purge."
}
},
"secretsPermissions": {
"type": "array",
"defaultValue": [
"list"
],
"metadata": {
"description": "Specifies the permissions to secrets in the vault. Valid values are: all, get, list, set, delete, backup, restore, recover, and purge."
}
},
"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')]",
"tenantId": "[parameters('tenantId')]",
"enableSoftDelete": true,
"softDeleteRetentionInDays": 90,
"accessPolicies": [
{
"objectId": "[parameters('objectId')]",
"tenantId": "[parameters('tenantId')]",
"permissions": {
"keys": "[parameters('keysPermissions')]",
"secrets": "[parameters('secretsPermissions')]"
}
}
],
"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'))]"
}
}
}
Dois recursos Azure estão definidos no modelo:
- Microsoft.KeyVault/vaults: criar um cofre de chaves do Azure.
- Microsoft.KeyVault/vaults/secrets: criar um segredo do Key Vault.
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 abra um modelo. O modelo cria um cofre de chaves e uma senha.
Selecione ou introduza os seguintes valores.
Modelo

A menos que seja especificado, use o valor padrão para criar o Key Vault e um segredo.
- Subscrição: selecione uma subscrição Azure.
- Grupo de recursos: selecione Criar novo, insira um nome exclusivo para o grupo de recursos e clique em OK.
- Localização: selecione uma localização. Por exemplo, E.U.A. Central.
- Key Vault Name: introduza um nome para o key vault, que deve ser globalmente único dentro do espaço de nomes .vault.azure.net. Você vai precisar do nome na próxima seção quando validar a implementação.
- ID do locatário: a função de modelo recupera automaticamente o ID do locatário. Não altere o valor padrão.
- ID de Utilizador do Anúncio: introduza o seu ID de objeto de utilizador do Microsoft Entra que recuperou de Pré-requisitos.
- Nome secreto: insira um nome para o segredo que você armazena no cofre de chaves. Por exemplo, adminpassword.
- Valor secreto: insira o valor secreto. Se você armazenar uma senha, é recomendável usar a senha gerada que você criou em Pré-requisitos.
- Aceito os termos e condições acima apresentados: selecione.
Selecione Comprar. Depois que o cofre de chaves for implantado com êxito, você receberá uma notificação:
O portal do Azure é utilizado para implementar o modelo. Além do portal Azure, também pode usar o Azure PowerShell, CLI do Azure e REST API. Para aprender outros métodos de implantação, consulte Implantar modelos.
Analisar os recursos implementados
Pode usar o portal do Azure para verificar o cofre de chaves e o segredo, ou usar o seguinte script CLI do Azure ou Azure PowerShell para listar o segredo criado.
echo "Enter your key vault name:" &&
read keyVaultName &&
az keyvault secret list --vault-name $keyVaultName &&
echo "Press [ENTER] to continue ..."
A saída é semelhante a:
Limpeza de recursos
Outros inícios rápidos e tutoriais desenvolvem-se a partir deste início rápido do Key Vault. Se pretende continuar a trabalhar com os quickstarts e tutoriais subsequentes, poderá querer deixar estes recursos no lugar. Quando já não for necessário, elimina o grupo de recursos, o que elimina o Key Vault e os recursos relacionados. Para eliminar o grupo de recursos usando CLI do Azure ou Azure PowerShell:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Próximos passos
Neste início rápido, você criou um cofre de chaves e um segredo usando um modelo ARM e validou a implantação. Para saber mais sobre o Key Vault e o Azure Resource Manager, continue para os artigos abaixo.
- Leia uma visão geral de Azure Key Vault
- Saiba mais sobre Azure Resource Manager
- Revise a visão geral de segurança Key Vault
