Para orientações sobre como usar cofres de chaves para valores seguros, veja Gerencie segredos usando Bicep.
Para um início rápido na criação de um segredo, veja Quickstart: Defina e recupere um segredo de Azure Key Vault usando um template ARM.
Para um início rápido na criação de uma chave, veja Quickstart: Crie um cofre de chaves Azure e uma chave usando o template ARM.
Definição de recurso Bicep
O tipo de recurso vaults/keys pode ser implantado com operações direcionadas:
Para obter uma lista de propriedades alteradas em cada versão da API, consulte de log de alterações.
Exemplos de uso
Amostras de Bicep
Um exemplo básico de implantação do Key Vault Keys.
param resourceName string = 'acctest0001'
param location string = 'westeurope'
resource vault 'Microsoft.KeyVault/vaults@2023-02-01' = {
name: resourceName
location: location
properties: {
sku: {
family: 'A'
name: 'standard'
}
accessPolicies: []
enableSoftDelete: true
enablePurgeProtection: true
tenantId: tenant().tenantId
}
}
resource putAccesspolicy 'Microsoft.KeyVault/vaults/accessPolicies@2023-02-01' = {
name: 'add'
parent: vault
properties: {
accessPolicies: [
{
objectId: deployer().objectId
permissions: {
certificates: [
'ManageContacts'
]
keys: [
'Get'
'Create'
'Delete'
'List'
'Restore'
'Recover'
'UnwrapKey'
'WrapKey'
'Purge'
'Encrypt'
'Decrypt'
'Sign'
'Verify'
]
secrets: [
'Get'
]
storage: []
}
tenantId: tenant().tenantId
}
]
}
}
resource putKey 'Microsoft.KeyVault/vaults/keys@2023-02-01' = {
name: resourceName
parent: vault
dependsOn: [
putAccesspolicy
]
properties: {
keyOps: [
'encrypt'
'decrypt'
'sign'
'verify'
'wrapKey'
'unwrapKey'
]
keySize: 2048
kty: 'RSA'
}
}
Módulos verificados do Azure
Os seguintes módulos Azure Verificados podem ser usados para implantar esse tipo de recurso.
Exemplos de Início Rápido do Azure
Os seguintes modelos Azure Quickstart contêm Bicep exemplos para implantar esse tipo de recurso.
Para criar um recurso Microsoft.KeyVault/vaults/keys, adicione o seguinte Bicep ao seu modelo.
resource symbolicname 'Microsoft.KeyVault/vaults/keys@2026-03-01-preview' = {
parent: resourceSymbolicName
name: 'string'
properties: {
attributes: {
enabled: bool
exp: int
exportable: bool
nbf: int
}
curveName: 'string'
keyOps: [
'string'
]
keySize: int
kty: 'string'
release_policy: {
contentType: 'string'
data: 'string'
}
rotationPolicy: {
attributes: {
expiryTime: 'string'
}
lifetimeActions: [
{
action: {
type: 'string'
}
trigger: {
timeAfterCreate: 'string'
timeBeforeExpiry: 'string'
}
}
]
}
}
tags: {
{customized property}: 'string'
}
}
Valores de propriedade
Microsoft.KeyVault/cofres/chaves
| Nome |
Descrição |
Valor |
| nome |
O nome do recurso |
corda
Restrições: Padrão = ^[a-zA-Z0-9-]{1,127}$ (obrigatório) |
| pai |
No Bicep, você pode especificar o recurso pai para um recurso filho. Você só precisa adicionar essa propriedade quando o recurso filho é declarado fora do recurso pai.
Para obter mais informações, consulte recurso filho fora do recurso pai. |
Nome simbólico para o recurso do tipo: cofres |
| Propriedades |
As propriedades da chave a ser criada. |
KeyProperties (obrigatório) |
| Tags |
Marcas de recurso |
Dicionário de nomes e valores de marca. Consulte Marcas em modelos |
Ação
| Nome |
Descrição |
Valor |
| tipo |
O tipo de ação. |
'notificar' 'girar' |
Atributos-chave
| Nome |
Descrição |
Valor |
| Habilitado |
Determina se o objeto está habilitado ou não. |
Bool |
| Exp |
Data de expiração em segundos desde 1970-01-01T00:00:00Z. |
int |
| Exportável |
Indica se a chave privada pode ser exportada. |
Bool |
| nbf |
Não antes da data em segundos desde 1970-01-01T00:00:00Z. |
int |
Propriedades-chave
| Nome |
Descrição |
Valor |
| Atributos |
Os atributos da chave. |
KeyAttributes |
| nome_curva |
O nome da curva elíptica. Para obter valores válidos, consulte JsonWebKeyCurveName. O padrão para chaves EC e EC-HSM é P-256 |
'P-256' 'P-256K' 'P-384' 'P-521' |
| keyOps |
|
Matriz de cadeia de caracteres que contém qualquer um dos: 'descriptografar' 'criptografar' 'importar' 'Liberação' 'sinal' 'unwrapKey' 'verificar' 'wrapKey' |
| keySize |
O tamanho da chave em bits. Por exemplo: 2048, 3072 ou 4096 para RSA. O padrão para chaves RSA e RSA-HSM é 2048. Exceção feita para trazer sua própria chave (BYOK), chaves de troca de chaves padrão para 4096. |
int |
| obrigado |
O tipo da chave. Para obter valores válidos, consulte JsonWebKeyType. |
«CE» 'EC-HSM' 'oct-HSM' 'RSA' 'RSA-HSM' |
| release_policy |
Política de liberação de chave em resposta. Ele será usado para saída e entrada. Omitido se vazio |
KeyReleasePolicy |
| política de rotação |
Política de rotação de chave em resposta. Ele será usado para saída e entrada. Omitido se vazio |
RotationPolicy |
KeyReleasePolicy
| Nome |
Descrição |
Valor |
| tipo de conteúdo |
Tipo de conteúdo e versão da política de versão de chave |
cadeia |
| dados |
Codificação de blob das regras de política sob as quais a chave pode ser liberada. |
cadeia |
Atributos KeyRotationPolicyAttributes
| Nome |
Descrição |
Valor |
| expiryTime |
A hora de expiração da nova versão da chave. Ele deve estar no formato ISO8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
Ação vitalícia
| Nome |
Descrição |
Valor |
| ação |
A ação da política de rotação de chaves lifetimeAction. |
de Ação |
| disparador |
O gatilho do lifetimeAction da política de rotação de chaves. |
de gatilho |
Política de rotação
| Nome |
Descrição |
Valor |
| Atributos |
Os atributos da política de rotação de chaves. |
Atributos KeyRotationPolicyAttributes |
| lifetimeActions |
O lifetimeActions para a ação de rotação de chave. |
LifetimeAction [] |
Gatilho
| Nome |
Descrição |
Valor |
| timeAfterCreate |
A duração do tempo após a criação da chave para girar a chave. Ele só se aplica à rotação. Ele estará no formato de duração ISO 8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
| timeBeforeExpiry |
A duração do tempo antes da expiração da chave para girar ou notificar. Ele estará no formato de duração ISO 8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
Definição de recurso de modelo do ARM
O tipo de recurso vaults/keys pode ser implantado com operações direcionadas:
Exemplos de uso
Modelos de Início Rápido do Azure
Os seguintes modelos Azure Quickstart implantam esse tipo de recurso.
Para criar um recurso Microsoft.KeyVault/vaults/keys, adicione o JSON a seguir ao modelo.
{
"type": "Microsoft.KeyVault/vaults/keys",
"apiVersion": "2026-03-01-preview",
"name": "string",
"properties": {
"attributes": {
"enabled": "bool",
"exp": "int",
"exportable": "bool",
"nbf": "int"
},
"curveName": "string",
"keyOps": [ "string" ],
"keySize": "int",
"kty": "string",
"release_policy": {
"contentType": "string",
"data": "string"
},
"rotationPolicy": {
"attributes": {
"expiryTime": "string"
},
"lifetimeActions": [
{
"action": {
"type": "string"
},
"trigger": {
"timeAfterCreate": "string",
"timeBeforeExpiry": "string"
}
}
]
}
},
"tags": {
"{customized property}": "string"
}
}
Valores de propriedade
Microsoft.KeyVault/cofres/chaves
| Nome |
Descrição |
Valor |
| apiVersion |
A versão da API |
'Prévia 2026-03-01-Preview' |
| nome |
O nome do recurso |
corda
Restrições: Padrão = ^[a-zA-Z0-9-]{1,127}$ (obrigatório) |
| Propriedades |
As propriedades da chave a ser criada. |
KeyProperties (obrigatório) |
| Tags |
Marcas de recurso |
Dicionário de nomes e valores de marca. Consulte Marcas em modelos |
| tipo |
O tipo de recurso |
'Microsoft.KeyVault/vaults/keys' |
Ação
| Nome |
Descrição |
Valor |
| tipo |
O tipo de ação. |
'notificar' 'girar' |
Atributos-chave
| Nome |
Descrição |
Valor |
| Habilitado |
Determina se o objeto está habilitado ou não. |
Bool |
| Exp |
Data de expiração em segundos desde 1970-01-01T00:00:00Z. |
int |
| Exportável |
Indica se a chave privada pode ser exportada. |
Bool |
| nbf |
Não antes da data em segundos desde 1970-01-01T00:00:00Z. |
int |
Propriedades-chave
| Nome |
Descrição |
Valor |
| Atributos |
Os atributos da chave. |
KeyAttributes |
| nome_curva |
O nome da curva elíptica. Para obter valores válidos, consulte JsonWebKeyCurveName. O padrão para chaves EC e EC-HSM é P-256 |
'P-256' 'P-256K' 'P-384' 'P-521' |
| keyOps |
|
Matriz de cadeia de caracteres que contém qualquer um dos: 'descriptografar' 'criptografar' 'importar' 'Liberação' 'sinal' 'unwrapKey' 'verificar' 'wrapKey' |
| keySize |
O tamanho da chave em bits. Por exemplo: 2048, 3072 ou 4096 para RSA. O padrão para chaves RSA e RSA-HSM é 2048. Exceção feita para trazer sua própria chave (BYOK), chaves de troca de chaves padrão para 4096. |
int |
| obrigado |
O tipo da chave. Para obter valores válidos, consulte JsonWebKeyType. |
«CE» 'EC-HSM' 'oct-HSM' 'RSA' 'RSA-HSM' |
| release_policy |
Política de liberação de chave em resposta. Ele será usado para saída e entrada. Omitido se vazio |
KeyReleasePolicy |
| política de rotação |
Política de rotação de chave em resposta. Ele será usado para saída e entrada. Omitido se vazio |
RotationPolicy |
KeyReleasePolicy
| Nome |
Descrição |
Valor |
| tipo de conteúdo |
Tipo de conteúdo e versão da política de versão de chave |
cadeia |
| dados |
Codificação de blob das regras de política sob as quais a chave pode ser liberada. |
cadeia |
Atributos KeyRotationPolicyAttributes
| Nome |
Descrição |
Valor |
| expiryTime |
A hora de expiração da nova versão da chave. Ele deve estar no formato ISO8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
Ação vitalícia
| Nome |
Descrição |
Valor |
| ação |
A ação da política de rotação de chaves lifetimeAction. |
de Ação |
| disparador |
O gatilho do lifetimeAction da política de rotação de chaves. |
de gatilho |
Política de rotação
| Nome |
Descrição |
Valor |
| Atributos |
Os atributos da política de rotação de chaves. |
Atributos KeyRotationPolicyAttributes |
| lifetimeActions |
O lifetimeActions para a ação de rotação de chave. |
LifetimeAction [] |
Gatilho
| Nome |
Descrição |
Valor |
| timeAfterCreate |
A duração do tempo após a criação da chave para girar a chave. Ele só se aplica à rotação. Ele estará no formato de duração ISO 8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
| timeBeforeExpiry |
A duração do tempo antes da expiração da chave para girar ou notificar. Ele estará no formato de duração ISO 8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
O tipo de recurso vaults/keys pode ser implantado com operações direcionadas:
Exemplos de uso
Um exemplo básico de implantação do Key Vault Keys.
terraform {
required_providers {
azapi = {
source = "Azure/azapi"
}
azurerm = {
source = "hashicorp/azurerm"
}
}
}
provider "azurerm" {
features {
}
}
provider "azapi" {
skip_provider_registration = false
}
variable "resource_name" {
type = string
default = "acctest0001"
}
variable "location" {
type = string
default = "westeurope"
}
data "azurerm_client_config" "current" {
}
resource "azapi_resource" "resourceGroup" {
type = "Microsoft.Resources/resourceGroups@2020-06-01"
name = var.resource_name
location = var.location
}
resource "azapi_resource" "vault" {
type = "Microsoft.KeyVault/vaults@2023-02-01"
parent_id = azapi_resource.resourceGroup.id
name = var.resource_name
location = var.location
body = {
properties = {
sku = {
family = "A"
name = "standard"
}
accessPolicies = []
enableSoftDelete = true
enablePurgeProtection = true
tenantId = data.azurerm_client_config.current.tenant_id
}
}
schema_validation_enabled = false
response_export_values = ["*"]
lifecycle {
ignore_changes = [body.properties.accessPolicies]
}
}
resource "azapi_resource_action" "put_accessPolicy" {
type = "Microsoft.KeyVault/vaults/accessPolicies@2023-02-01"
resource_id = "${azapi_resource.vault.id}/accessPolicies/add"
method = "PUT"
body = {
properties = {
accessPolicies = [
{
objectId = data.azurerm_client_config.current.object_id
permissions = {
certificates = [
"ManageContacts",
]
keys = [
"Get", "Create", "Delete", "List", "Restore", "Recover", "UnwrapKey", "WrapKey", "Purge", "Encrypt", "Decrypt", "Sign", "Verify"
]
secrets = [
"Get",
]
storage = [
]
}
tenantId = data.azurerm_client_config.current.tenant_id
},
]
}
}
response_export_values = ["*"]
}
data "azapi_resource_id" "key" {
type = "Microsoft.KeyVault/vaults/keys@2023-02-01"
parent_id = azapi_resource.vault.id
name = var.resource_name
}
resource "azapi_resource_action" "put_key" {
type = "Microsoft.KeyVault/vaults/keys@2023-02-01"
resource_id = data.azapi_resource_id.key.id
method = "PUT"
body = {
properties = {
keySize = 2048
kty = "RSA"
keyOps = ["encrypt", "decrypt", "sign", "verify", "wrapKey", "unwrapKey"]
}
}
response_export_values = ["*"]
depends_on = [azapi_resource_action.put_accessPolicy]
}
Para criar um recurso Microsoft.KeyVault/vaults/keys, adicione o Terraform a seguir ao seu modelo.
resource "azapi_resource" "symbolicname" {
type = "Microsoft.KeyVault/vaults/keys@2026-03-01-preview"
name = "string"
parent_id = "string"
tags = {
{customized property} = "string"
}
body = {
properties = {
attributes = {
enabled = bool
exp = int
exportable = bool
nbf = int
}
curveName = "string"
keyOps = [
"string"
]
keySize = int
kty = "string"
release_policy = {
contentType = "string"
data = "string"
}
rotationPolicy = {
attributes = {
expiryTime = "string"
}
lifetimeActions = [
{
action = {
type = "string"
}
trigger = {
timeAfterCreate = "string"
timeBeforeExpiry = "string"
}
}
]
}
}
}
}
Valores de propriedade
Microsoft.KeyVault/cofres/chaves
| Nome |
Descrição |
Valor |
| nome |
O nome do recurso |
corda
Restrições: Padrão = ^[a-zA-Z0-9-]{1,127}$ (obrigatório) |
| parent_id |
A ID do recurso que é o pai desse recurso. |
ID do recurso do tipo: cofres |
| Propriedades |
As propriedades da chave a ser criada. |
KeyProperties (obrigatório) |
| Tags |
Marcas de recurso |
Dicionário de nomes e valores de marca. |
| tipo |
O tipo de recurso |
"Microsoft.KeyVault/vaults/keys@2026-03-01-preview" |
Ação
| Nome |
Descrição |
Valor |
| tipo |
O tipo de ação. |
'notificar' 'girar' |
Atributos-chave
| Nome |
Descrição |
Valor |
| Habilitado |
Determina se o objeto está habilitado ou não. |
Bool |
| Exp |
Data de expiração em segundos desde 1970-01-01T00:00:00Z. |
int |
| Exportável |
Indica se a chave privada pode ser exportada. |
Bool |
| nbf |
Não antes da data em segundos desde 1970-01-01T00:00:00Z. |
int |
Propriedades-chave
| Nome |
Descrição |
Valor |
| Atributos |
Os atributos da chave. |
KeyAttributes |
| nome_curva |
O nome da curva elíptica. Para obter valores válidos, consulte JsonWebKeyCurveName. O padrão para chaves EC e EC-HSM é P-256 |
'P-256' 'P-256K' 'P-384' 'P-521' |
| keyOps |
|
Matriz de cadeia de caracteres que contém qualquer um dos: 'descriptografar' 'criptografar' 'importar' 'Liberação' 'sinal' 'unwrapKey' 'verificar' 'wrapKey' |
| keySize |
O tamanho da chave em bits. Por exemplo: 2048, 3072 ou 4096 para RSA. O padrão para chaves RSA e RSA-HSM é 2048. Exceção feita para trazer sua própria chave (BYOK), chaves de troca de chaves padrão para 4096. |
int |
| obrigado |
O tipo da chave. Para obter valores válidos, consulte JsonWebKeyType. |
«CE» 'EC-HSM' 'oct-HSM' 'RSA' 'RSA-HSM' |
| release_policy |
Política de liberação de chave em resposta. Ele será usado para saída e entrada. Omitido se vazio |
KeyReleasePolicy |
| política de rotação |
Política de rotação de chave em resposta. Ele será usado para saída e entrada. Omitido se vazio |
RotationPolicy |
KeyReleasePolicy
| Nome |
Descrição |
Valor |
| tipo de conteúdo |
Tipo de conteúdo e versão da política de versão de chave |
cadeia |
| dados |
Codificação de blob das regras de política sob as quais a chave pode ser liberada. |
cadeia |
Atributos KeyRotationPolicyAttributes
| Nome |
Descrição |
Valor |
| expiryTime |
A hora de expiração da nova versão da chave. Ele deve estar no formato ISO8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
Ação vitalícia
| Nome |
Descrição |
Valor |
| ação |
A ação da política de rotação de chaves lifetimeAction. |
de Ação |
| disparador |
O gatilho do lifetimeAction da política de rotação de chaves. |
de gatilho |
Política de rotação
| Nome |
Descrição |
Valor |
| Atributos |
Os atributos da política de rotação de chaves. |
Atributos KeyRotationPolicyAttributes |
| lifetimeActions |
O lifetimeActions para a ação de rotação de chave. |
LifetimeAction [] |
Gatilho
| Nome |
Descrição |
Valor |
| timeAfterCreate |
A duração do tempo após a criação da chave para girar a chave. Ele só se aplica à rotação. Ele estará no formato de duração ISO 8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |
| timeBeforeExpiry |
A duração do tempo antes da expiração da chave para girar ou notificar. Ele estará no formato de duração ISO 8601. Por exemplo: 'P90D', 'P1Y'. |
cadeia |