Aplicar tags com o Bicep
Este artigo descreve como usar o Bicep para marcar recursos, grupos de recursos e assinaturas durante a implantação. Para obter recomendações e limitações de tags, consulte Usar tags para organizar seus recursos do Azure e hierarquia de gerenciamento.
Nota
As tags que você aplica por meio de um arquivo Bicep substituem quaisquer tags existentes.
Aplicar valores
O exemplo a seguir implanta uma conta de armazenamento com três tags. Duas das tags (Dept
e Environment
) são definidas como valores literais. Uma tag (LastDeployed
) é definida como um parâmetro que assume como padrão a data atual.
param location string = resourceGroup().location
param utcShort string = utcNow('d')
resource stgAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
name: 'storage${uniqueString(resourceGroup().id)}'
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'Storage'
tags: {
Dept: 'Finance'
Environment: 'Production'
LastDeployed: utcShort
}
}
Aplicar um objeto
Você pode definir um parâmetro de objeto que armazena várias tags e aplicar esse objeto ao elemento tag. Essa abordagem fornece mais flexibilidade do que o exemplo anterior porque o objeto pode ter propriedades diferentes. Cada propriedade no objeto torna-se uma etiqueta separada para o recurso. O exemplo a seguir tem um parâmetro chamado tagValues
que você aplica ao elemento tag.
param location string = resourceGroup().location
param tagValues object = {
Dept: 'Finance'
Environment: 'Production'
}
resource stgAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
name: 'storage${uniqueString(resourceGroup().id)}'
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'Storage'
tags: tagValues
}
Aplicar uma cadeia de caracteres JSON
Para armazenar muitos valores numa única etiqueta, aplique uma cadeia JSON que represente os valores. Toda a cadeia de caracteres JSON é armazenada como uma tag que não pode exceder 256 caracteres. O exemplo seguinte tem uma única etiqueta com o nome CostCenter
que contém vários valores de uma cadeia JSON:
param location string = resourceGroup().location
resource stgAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
name: 'storage${uniqueString(resourceGroup().id)}'
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'Storage'
tags: {
CostCenter: '{"Dept":"Finance","Environment":"Production"}'
}
}
Aplicar tags do grupo de recursos
Para aplicar tags de um grupo de recursos a um recurso, use a função resourceGroup( ). Quando você obtiver o valor da tag, use a tags[tag-name]
sintaxe em vez da tags.tag-name
sintaxe, porque alguns caracteres não são analisados corretamente na notação de ponto.
param location string = resourceGroup().location
resource stgAccount 'Microsoft.Storage/storageAccounts@2021-04-01' = {
name: 'storage${uniqueString(resourceGroup().id)}'
location: location
sku: {
name: 'Standard_LRS'
}
kind: 'Storage'
tags: {
Dept: resourceGroup().tags['Dept']
Environment: resourceGroup().tags['Environment']
}
}
Aplicar etiquetas a grupos de recursos ou subscrições
Você pode adicionar tags a um grupo de recursos ou assinatura implantando o Microsoft.Resources/tags
tipo de recurso. Você pode aplicar as tags ao grupo de recursos de destino ou à assinatura que deseja implantar. Sempre que você implanta o modelo, substitui as tags anteriores.
param tagName string = 'TeamName'
param tagValue string = 'AppTeam1'
resource applyTags 'Microsoft.Resources/tags@2021-04-01' = {
name: 'default'
properties: {
tags: {
'${tagName}': tagValue
}
}
}
O Bíceps a seguir adiciona as tags de um objeto à assinatura na qual você implanta. Para obter mais informações sobre implantações de assinatura, consulte Criar grupos de recursos e recursos no nível da assinatura.
targetScope = 'subscription'
param tagObject object = {
TeamName: 'AppTeam1'
Dept: 'Finance'
Environment: 'Production'
}
resource applyTags 'Microsoft.Resources/tags@2021-04-01' = {
name: 'default'
properties: {
tags: tagObject
}
}
Próximos passos
- Para obter uma lista de tipos de recursos que dão suporte a tags, consulte Suporte de tags para recursos do Azure.
- Para obter recomendações sobre como implementar uma estratégia de marcação, consulte Guia de decisão de nomenclatura e marcação de recursos.
- Para obter recomendações e limitações de tags, consulte Usar tags para organizar seus recursos do Azure e hierarquia de gerenciamento.