Använda taggar med Bicep
Den här artikeln beskriver 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.
Anteckning
De taggar som du tillämpar via en Bicep-fil skriver över alla befintliga taggar.
Använda 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 ä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
}
}
Använda ett objekt
Du kan definiera en objektparameter som lagrar flera taggar och tillämpa objektet på taggelementet. Den här metoden ger mer 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 tillämpas på 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 hämtar 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 punktnotationen.
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 tillämpa taggarna på den målresursgrupp 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 den distribueras 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
- Alla resurstyper har inte stöd för taggar. Information om hur du avgör om du kan använda en tagg för en resurstyp finns i Taggstöd för Azure-resurser.
- Rekommendationer om hur du implementerar en taggningsstrategi finns i beslutsguiden 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.