Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Azure Key Vault é um serviço de nuvem que fornece um repositório seguro para segredos, como chaves, senhas, certificados e outros segredos. Este Início Rápido concentra-se no processo de implantação de um arquivo Bicep para criar um cofre de chaves e um segredo.
Bicep é uma DSL (linguagem específica do domínio) que usa sintaxe declarativa para implantar recursos Azure. Ele fornece sintaxe concisa, segurança de tipos confiável e suporte para reutilização de código. Bicep oferece a melhor experiência de criação para suas soluções de infraestrutura como código em Azure.
Pré-requisitos
- Se você não tiver uma assinatura Azure, crie uma conta gratuita antes de começar.
Examinar o arquivo Bicep
O modelo usado neste início rápido é de Azure Modelos de Início Rápido.
@description('Specifies the name of the key vault.')
param keyVaultName string
@description('Specifies the Azure location where the key vault should be created.')
param location string = resourceGroup().location
@description('Specifies whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault.')
param enabledForDeployment bool = false
@description('Specifies whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys.')
param enabledForDiskEncryption bool = false
@description('Specifies whether Azure Resource Manager is permitted to retrieve secrets from the key vault.')
param enabledForTemplateDeployment bool = false
@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.')
param tenantId string = subscription().tenantId
@description('Specifies whether the key vault is a standard vault or a premium vault.')
@allowed([
'standard'
'premium'
])
param skuName string = 'standard'
@description('Specifies all secrets {"secretName":"","secretValue":""} wrapped in a secure object.')
@secure()
param secretsObject object
resource kv 'Microsoft.KeyVault/vaults@2023-07-01' = {
name: keyVaultName
location: location
properties: {
enabledForDeployment: enabledForDeployment
enabledForTemplateDeployment: enabledForTemplateDeployment
enabledForDiskEncryption: enabledForDiskEncryption
enableRbacAuthorization: true
tenantId: tenantId
enableSoftDelete: true
softDeleteRetentionInDays: 90
enablePurgeProtection: true
sku: {
name: skuName
family: 'A'
}
networkAcls: {
defaultAction: 'Allow'
bypass: 'AzureServices'
}
}
}
resource secrets 'Microsoft.KeyVault/vaults/secrets@2023-07-01' = [for secret in secretsObject.secrets: {
name: secret.secretName
parent: kv
properties: {
value: secret.secretValue
}
}]
output location string = location
output name string = kv.name
output resourceGroupName string = resourceGroup().name
output resourceId string = kv.id
Dois recursos Azure são definidos no arquivo Bicep:
-
Microsoft.KeyVault/vaults: criar um Azure Key Vault com a autorização RBAC do Azure habilitada (
enableRbacAuthorization: true). -
Microsoft. KeyVault/vaults/secrets: crie um ou mais segredos do cofre de chaves, iterando na matriz
secretsObject.secrets.
Implantar o arquivo de Bicep
Salve o arquivo Bicep como main.bicep ao computador local.
Crie um arquivo de parâmetros (por exemplo, main.parameters.json) que forneça o
secretsObjectvalor:{ "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#", "contentVersion": "1.0.0.0", "parameters": { "keyVaultName": { "value": "<vault-name>" }, "secretsObject": { "value": { "secrets": [ { "secretName": "adminpassword", "secretValue": "<your-secret-value>" } ] } } } }Implante o arquivo Bicep usando a CLI do Azure ou o Azure PowerShell.
az group create --name myResourceGroup --location eastus az deployment group create --resource-group myResourceGroup --template-file main.bicep --parameters @main.parameters.jsonObservação
Substitua
<vault-name>pelo nome do cofre de chaves, que deve ser globalmente exclusivo dentro dovault.azure.netnamespace. Substitua<your-secret-value>pelo valor do segredo a ser armazenado. ComosecretsObjecté declarado como umsecureObject, seu valor não é registrado ou ecoado novamente.Quando a implantação for concluída, você deverá ver uma mensagem indicando que ela foi bem-sucedida.
Atribuir uma função RBAC ao cofre de chaves
O cofre de chaves criado por esse arquivo Bicep usa Azure RBAC para autorização. Para acessar segredos por meio do plano de dados (por exemplo, usando o CLI do Azure ou Azure PowerShell), você precisa atribuir a si mesmo uma função apropriada.
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)
Observação
As atribuições de função podem levar um ou dois minutos para serem propagadas.
Examinar os recursos implantados
Você pode usar o portal Azure para verificar o cofre de chaves e o segredo ou usar o seguinte CLI do Azure ou Azure PowerShell script 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 ..."
Limpar os recursos
Quando não for mais necessário, use o portal Azure, CLI do Azure ou Azure PowerShell para excluir o grupo de recursos e seus recursos.
az group delete --name myResourceGroup
Observação
Excluir o grupo de recursos também exclui o cofre de chaves, mas o cofre entra em estado de exclusão temporária e permanece recuperável durante o período de retenção (por padrão, 90 dias). O nome do cofre permanece reservado globalmente durante esse período e, como a proteção contra a limpeza está habilitada, não é possível fazer a limpeza do cofre antes do prazo. Para os cofres de chaves padrão, cofres d exclusão temporária não incorrem em encargos. Para obter mais informações, consulte Visão geral da exclusão temporária do cofre de chaves.
Próximas etapas
Neste guia de início rápido, você criou um cofre de chaves e um segredo usando o Bicep e, em seguida, validou a implantação. Para saber mais sobre Key Vault e Bicep, continue nos artigos abaixo.
- Leia uma Visão geral do Azure Key Vault
- Saiba mais sobre Bicep
- Examine a visão geral de segurança Key Vault