Använda taggar med Bicep
I den här artikeln beskrivs hur du använder Bicep för att tagga resurser, resursgrupper och prenumerationer under distributionen. Taggrekommendationer och begränsningar finns i Använda taggar för att organisera dina Azure-resurser och hanteringshierarki.
Kommentar
Taggarna som du tillämpar via en Bicep-fil skriver över befintliga taggar.
Tillämpa värden
I följande exempel distribueras ett lagringskonto med tre taggar. Två av taggarna (Dept
och Environment
) är inställda på literalvärden. En tagg (LastDeployed
) är inställd på en parameter som standardvärdet för det aktuella datumet.
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
}
}
Tillämpa ett objekt
Du kan definiera en objektparameter som lagrar flera taggar och tillämpa objektet på taggelementet. Den här metoden ger större flexibilitet än i föregående exempel eftersom objektet kan ha olika egenskaper. Varje egenskap i objektet blir en separat tagg för resursen. I följande exempel finns en parameter med namnet tagValues
som du använder för taggelementet.
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
}
Använda en JSON-sträng
Du kan lagra flera värden i en enskild tagg genom att använda en JSON-sträng som representerar värdena. Hela JSON-strängen lagras som en tagg som inte får överstiga 256 tecken. I följande exempel finns en enskild tagg med namnet CostCenter
som innehåller flera värden från en JSON-sträng:
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"}'
}
}
Använda taggar från resursgrupp
Om du vill tillämpa taggar från en resursgrupp på en resurs använder du funktionen resourceGroup(). När du får taggvärdet använder du syntaxen tags[tag-name]
i stället för syntaxen tags.tag-name
, eftersom vissa tecken inte parsas korrekt i punkt notationen.
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']
}
}
Använda taggar för resursgrupper eller prenumerationer
Du kan lägga till taggar i en resursgrupp eller prenumeration genom att Microsoft.Resources/tags
distribuera resurstypen. Du kan använda taggarna för den resursgrupp eller prenumeration som du vill distribuera. Varje gång du distribuerar mallen ersätter du eventuella tidigare taggar.
param tagName string = 'TeamName'
param tagValue string = 'AppTeam1'
resource applyTags 'Microsoft.Resources/tags@2021-04-01' = {
name: 'default'
properties: {
tags: {
'${tagName}': tagValue
}
}
}
Följande Bicep lägger till taggarna från ett objekt till den prenumeration som du distribuerar till. Mer information om prenumerationsdistributioner finns i Skapa resursgrupper och resurser på prenumerationsnivå.
targetScope = 'subscription'
param tagObject object = {
TeamName: 'AppTeam1'
Dept: 'Finance'
Environment: 'Production'
}
resource applyTags 'Microsoft.Resources/tags@2021-04-01' = {
name: 'default'
properties: {
tags: tagObject
}
}
Nästa steg
- En lista över resurstyper som stöder taggar finns i Taggstöd för Azure-resurser.
- Rekommendationer om hur du implementerar en taggningsstrategi finns i Beslutsguide för namngivning och taggning av resurser.
- Taggrekommendationer och begränsningar finns i Använda taggar för att organisera dina Azure-resurser och hanteringshierarki.