Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Important
Azure Blueprints (Preview) wordt op 31 januari 2027 met pensioen gestuurd, met een gefaseerde pensionering die begint op 31 juli 2026. Migreer je bestaande blueprintdefinities en -toewijzingen naar Deployment Stacks (aanbevolen) en Template Specs. Blueprint-artefacten worden omgezet naar ARM JSON-sjablonen of Bicep-bestanden die worden gebruikt om deploymentstacks te definiëren. Voor de volledige gefaseerde tijdlijn, impact en FAQ, zie Azure Blueprints pensioen of https://aka.ms/AzureBlueprintsRetirement. Voor instructies over het opstellen van een artefact als een ARM-resource, zie:
Azure Blueprints biedt functies die een blueprintdefinitie dynamischer maken. Deze functies zijn bedoeld voor gebruik met blueprintdefinities en blueprint-artefacten. Een Azure Resource Manager Template (ARM-template) artefact ondersteunt het volledige gebruik van Resource Manager-functies, naast het verkrijgen van een dynamische waarde via een blueprint-parameter.
De volgende functies worden ondersteund:
artifacts
artifacts(artifactName)
Geeft een object terug met eigenschappen die gevuld zijn met die blueprint-artefacten die worden uitgevoerd.
Note
De artifacts() functie kan niet vanuit een ARM-sjabloon worden gebruikt. De functie kan alleen worden gebruikt in de blueprint definition JSON of in de artifact JSON wanneer de blueprint wordt beheerd met Azure PowerShell of REST API als onderdeel van Blueprints-as-code.
Parameters
| Parameter | Required | Typ | Description |
|---|---|---|---|
| artifactName | Yes | string | De naam van een blauwdruk-artefact. |
Retourwaarde
Een object met outputeigenschappen. De eigenschappen van de output zijn afhankelijk van het type blauwdrukartefact dat wordt genoemd. Alle types volgen het format:
{
"outputs": {collectionOfOutputProperties}
}
Beleidstoewijzingsartefact
{
"outputs": {
"policyAssignmentId": "{resourceId-of-policy-assignment}",
"policyAssignmentName": "{name-of-policy-assignment}",
"policyDefinitionId": "{resourceId-of-policy-definition}",
}
}
ARM-sjabloonartefact
De uitvoereigenschappen van het geretourneerde object worden gedefinieerd binnen de ARM-template en worden teruggegeven door de deployment.
Roltoewijzingsartefact
{
"outputs": {
"roleAssignmentId": "{resourceId-of-role-assignment}",
"roleDefinitionId": "{resourceId-of-role-definition}",
"principalId": "{principalId-role-is-being-assigned-to}",
}
}
Example
Een ARM-sjabloonartefact met de ID myTemplateArtifact bevat de volgende voorbeelduitvoer-eigenschap:
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
...
"outputs": {
"myArray": {
"type": "array",
"value": ["first", "second"]
},
"myString": {
"type": "string",
"value": "my string value"
},
"myObject": {
"type": "object",
"value": {
"myProperty": "my value",
"anotherProperty": true
}
}
}
}
Enkele voorbeelden van het ophalen van data uit het myTemplateArtifact-voorbeeld zijn:
| Expression | Typ | Value |
|---|---|---|
[artifacts("myTemplateArtifact").outputs.myArray] |
Array | ["eerste", "tweede"] |
[artifacts("myTemplateArtifact").outputs.myArray[0]] |
String | "Eerst" |
[artifacts("myTemplateArtifact").outputs.myString] |
String | "Mijn snaarwaarde" |
[artifacts("myTemplateArtifact").outputs.myObject] |
Object | { "mijneigendom": "mijn waarde", "anotherProperty": waar } |
[artifacts("myTemplateArtifact").outputs.myObject.myProperty] |
String | "Mijn waarde" |
[artifacts("myTemplateArtifact").outputs.myObject.anotherProperty] |
Bool | True |
concat
concat(string1, string2, string3, ...)
Combineert meerdere stringwaarden en geeft de gekoppelde string terug.
Parameters
| Parameter | Required | Typ | Description |
|---|---|---|---|
| tekenreeks1 | Yes | string | De eerste waarde voor concatenatie. |
| aanvullende argumenten | Nee. | string | Extra waarden in opeenvolgende volgorde voor concatenatie |
Retourwaarde
Een reeks samengevoegde waarden.
Remarks
De Azure Blueprints-functie verschilt van de ARM-templatefunctie doordat deze alleen met strings werkt.
Example
concat(parameters('organizationName'), '-vm')
parameters
parameters(parameterName)
Geeft een blueprint-parameter terug. De gespecificeerde parameternaam moet worden gedefinieerd in de blueprintdefinitie of in blueprint-artefacten.
Parameters
| Parameter | Required | Typ | Description |
|---|---|---|---|
| parameterNaam | Yes | string | De naam van de parameter die moet worden geretourneerd. |
Retourwaarde
De waarde van de opgegeven blauwdruk of blauwdrukartefactparameter.
Remarks
De Azure Blueprints-functie verschilt van de ARM-sjabloonfunctie doordat deze alleen werkt met blueprintparameters.
Example
Definieer parameter principalIds in de blueprintdefinitie:
{
"type": "Microsoft.Blueprint/blueprints",
"properties": {
...
"parameters": {
"principalIds": {
"type": "array",
"metadata": {
"displayName": "Principal IDs",
"description": "This is a blueprint parameter that any artifact can reference. We'll display these descriptions for you in the info bubble. Supply principal IDs for the users,groups, or service principals for the Azure role assignment.",
"strongType": "PrincipalId"
}
}
},
...
}
}
Gebruik dan principalIds als argument voor parameters() een blauwdrukartefact:
{
"type": "Microsoft.Blueprint/blueprints/artifacts",
"kind": "roleAssignment",
...
"properties": {
"roleDefinitionId": "/providers/Microsoft.Authorization/roleDefinitions/8e3af657-a8ff-443c-a75c-2fe8c4bcb635",
"principalIds": "[parameters('principalIds')]",
...
}
}
resourceGroup
resourceGroup()
Geeft een object terug dat de huidige resourcegroep vertegenwoordigt.
Retourwaarde
Het geretourneerde object heeft het volgende formaat:
{
"name": "{resourceGroupName}",
"location": "{resourceGroupLocation}",
}
Remarks
De Azure Blueprints-functie verschilt van de ARM-templatefunctie. De resourceGroup() functie kan niet worden gebruikt in een artefact op abonnementsniveau of in de blueprintdefinitie. Het kan alleen worden gebruikt in blauwdrukartefacten die deel uitmaken van een resourcegroep-artefact.
Een veelgebruikt gebruik van de resourceGroup() functie is het creëren van resources op dezelfde locatie als het resourcegroep-artefact.
Example
Om de locatie van de resourcegroep te gebruiken, ingesteld in de blueprintdefinitie of tijdens de toewijzing, als locatie voor een ander artefact, declareer je een resource group placeholder-object in je blueprintdefinitie. In dit voorbeeld is NetworkingPlaceholder de naam van de resourcegroep-placeholder.
{
"type": "Microsoft.Blueprint/blueprints",
"properties": {
...
"resourceGroups": {
"NetworkingPlaceholder": {
"location": "eastus"
}
}
}
}
Gebruik vervolgens de resourceGroup() functie in de context van een blueprint-artefact dat zich richt op een resource group placeholder-object. In dit voorbeeld wordt het sjabloonartefact ingezet in de NetworkingPlaceholder-resourcegroep en levert parameter resourceLocation dynamisch gevuld met de locatie van de NetworkingPlaceholder-resourcegroep aan het sjabloon. De locatie van de NetworkingPlaceholder-resourcegroep kan statisch zijn gedefinieerd op de blueprintdefinitie of dynamisch zijn gedefinieerd tijdens de toewijzing. In beide gevallen krijgt het sjabloonartefact die informatie als parameter en gebruikt het om de resources op de juiste locatie te plaatsen.
{
"type": "Microsoft.Blueprint/blueprints/artifacts",
"kind": "template",
"properties": {
"template": {
...
},
"resourceGroup": "NetworkingPlaceholder",
...
"parameters": {
"resourceLocation": {
"value": "[resourceGroup().location]"
}
}
}
}
resourceGroups
resourceGroups(placeholderName)
Geeft een object terug dat het gespecificeerde resourcegroep-artefact vertegenwoordigt. In tegenstelling tot resourceGroup(), die context van het artefact vereist, wordt deze functie gebruikt om de eigenschappen van een specifieke resourcegroep-plaatshouder te verkrijgen wanneer deze niet in de context van die resourcegroep is.
Parameters
| Parameter | Required | Typ | Description |
|---|---|---|---|
| plaatshouderNaam | Yes | string | De tijdelijke naam van het artefact van de resourcegroep die terugkomt. |
Retourwaarde
Het geretourneerde object heeft het volgende formaat:
{
"name": "{resourceGroupName}",
"location": "{resourceGroupLocation}",
}
Example
Om de locatie van de resourcegroep te gebruiken, ingesteld in de blueprintdefinitie of tijdens de toewijzing, als locatie voor een ander artefact, declareer je een resource group placeholder-object in je blueprintdefinitie. In dit voorbeeld is NetworkingPlaceholder de naam van de resourcegroep-placeholder.
{
"type": "Microsoft.Blueprint/blueprints",
"properties": {
...
"resourceGroups": {
"NetworkingPlaceholder": {
"location": "eastus"
}
}
}
}
Gebruik vervolgens de resourceGroups() functie uit de context van een blueprint-artefact om een referentie te krijgen naar het resource group placeholder-object. In dit voorbeeld wordt het sjabloonartefact buiten de NetworkingPlaceholder-resourcegroep geïmplementeerd en levert parameter artifactLocation dynamisch gevuld met de locatie van de NetworkingPlaceholder-resourcegroep aan de template. De locatie van de NetworkingPlaceholder-resourcegroep kan statisch zijn gedefinieerd op de blueprintdefinitie of dynamisch zijn gedefinieerd tijdens de toewijzing. In beide gevallen krijgt het sjabloonartefact die informatie als parameter en gebruikt het om de resources op de juiste locatie te plaatsen.
{
"kind": "template",
"properties": {
"template": {
...
},
...
"parameters": {
"artifactLocation": {
"value": "[resourceGroups('NetworkingPlaceholder').location]"
}
}
},
"type": "Microsoft.Blueprint/blueprints/artifacts",
"name": "myTemplate"
}
subscription
subscription()
Retourneert details over het abonnement voor de huidige blueprint-opdracht.
Retourwaarde
Het geretourneerde object heeft het volgende formaat:
{
"id": "/subscriptions/{subscriptionId}",
"subscriptionId": "{subscriptionId}",
"tenantId": "{tenantId}",
"displayName": "{name-of-subscription}"
}
Example
Gebruik de weergavenaam van het abonnement en de concat() functie om een naamgevingsconventie te creëren die als parameter resourceName aan het sjabloonartefact wordt doorgegeven.
{
"kind": "template",
"properties": {
"template": {
...
},
...
"parameters": {
"resourceName": {
"value": "[concat(subscription().displayName, '-vm')]"
}
}
},
"type": "Microsoft.Blueprint/blueprints/artifacts",
"name": "myTemplate"
}
Volgende stappen
- Meer informatie over de levenscyclus van blauwdrukken.
- Meer informatie over het gebruik van statische en dynamische parameters.
- Meer informatie over het aanpassen van de volgorde van blauwdrukken.
- Meer informatie over hoe u gebruikmaakt van resourcevergrendeling in blauwdrukken.
- Meer informatie over hoe u bestaande toewijzingen bijwerkt.
- Los tijdens de toewijzing van een blauwdruk problemen op met algemene stappen voor probleemoplossing.