Dela via


Distributionsfunktioner för Bicep

Den här artikeln beskriver Bicep-funktionerna för att hämta värden som är relaterade till den aktuella distributionen.

Distribuerare

deployer()

Returnerar information om det huvudnamn (identitet) som initierade den aktuella distributionen. Huvudnamnet kan vara en användare, tjänstens huvudnamn eller en hanterad identitet, beroende på hur distributionen startades.

Namnområde: az.

Returvärde

Den här funktionen returnerar ett objekt med information om distributionsobjektet, inklusive:

  • objectId: Microsoft Entra ID-objekt-ID för huvudkontot.
  • tenantId: Klient-ID:t för Microsoft Entra.
  • userPrincipalName: Användarens huvudnamn (UPN) om det är tillgängligt. För tjänstens huvudnamn eller hanterade identiteter kan den här egenskapen vara tom.

Anmärkning

De returnerade värdena beror på distributionskontexten. Kan till exempel userPrincipalName vara tomt för tjänstens huvudnamn eller hanterade identiteter.

{
  "objectId": "<principal-object-id>",
  "tenantId": "<tenant-id>",
  "userPrincipalName": "<user@domain.com or empty>"
}

Exempel

I följande exempel returnerar Bicep-filen distributionsobjektet.

output deployer object = deployer()

Exempelutdata (värdena skiljer sig åt baserat på distributionen):

{
  "objectId":"aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
  "tenantId":"aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
  "userPrincipalName":"john.doe@contoso.com"
}

Mer information om Azure-identiteter finns i Vad är en Azure Active Directory-identitet?.

distribution

deployment()

Returnerar information om den aktuella distributionsåtgärden.

Namnområde: az.

Returvärde

Den här funktionen returnerar objektet som skickas under distributionen. Egenskaperna i det returnerade objektet skiljer sig beroende på om du är:

När du distribuerar en lokal Bicep-fil till en resursgrupp returnerar funktionen följande format:

{
  "name": "",
  "properties": {
    "template": {
      "$schema": "",
      "contentVersion": "",
      "parameters": {},
      "variables": {},
      "resources": [],
      "outputs": {}
    },
    "templateHash": "",
    "parameters": {},
    "mode": "",
    "provisioningState": ""
  }
}

När du distribuerar till en Azure-prenumeration, hanteringsgrupp eller klientorganisation innehåller returobjektet en location egenskap. Egenskapen location ingår inte när du distribuerar en lokal Bicep-fil. Formatet är:

{
  "name": "",
  "location": "",
  "properties": {
    "template": {
      "$schema": "",
      "contentVersion": "",
      "resources": [],
      "outputs": {}
    },
    "templateHash": "",
    "parameters": {},
    "mode": "",
    "provisioningState": ""
  }
}

Exempel

Följande exempel returnerar distributionsobjektet:

output deploymentOutput object = deployment()

Föregående exempel returnerar följande objekt:

{
  "name": "deployment",
  "properties": {
    "template": {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "resources": [],
      "outputs": {
        "deploymentOutput": {
          "type": "Object",
          "value": "[deployment()]"
        }
      }
    },
    "templateHash": "13135986259522608210",
    "parameters": {},
    "mode": "Incremental",
    "provisioningState": "Accepted"
  }
}

-miljö

environment()

Returnerar information om Azure-miljön som används för distribution. Funktionen environment() är inte medveten om resurskonfigurationer. Den kan bara returnera ett enda standard-DNS-suffix för varje resurstyp.

Namnområde: az.

Kommentarer

Om du vill se en lista över registrerade miljöer för ditt konto använder du az cloud list eller Get-AzEnvironment.

Returvärde

Den här funktionen returnerar egenskaper för den aktuella Azure-miljön. I följande exempel visas egenskaperna för globala Azure. Nationella moln kan returnera något olika egenskaper.

{
  "name": "",
  "gallery": "",
  "graph": "",
  "portal": "",
  "graphAudience": "",
  "activeDirectoryDataLake": "",
  "batch": "",
  "media": "",
  "sqlManagement": "",
  "vmImageAliasDoc": "",
  "resourceManager": "",
  "authentication": {
    "loginEndpoint": "",
    "audiences": [
      "",
      ""
    ],
    "tenant": "",
    "identityProvider": ""
  },
  "suffixes": {
    "acrLoginServer": "",
    "azureDatalakeAnalyticsCatalogAndJob": "",
    "azureDatalakeStoreFileSystem": "",
    "azureFrontDoorEndpointSuffix": "",
    "keyvaultDns": "",
    "sqlServerHostname": "",
    "storage": ""
  }
}

Exempel

I följande exempel returnerar Bicep-filen miljöobjektet.

output environmentOutput object = environment()

Föregående exempel returnerar följande objekt när det distribueras till global Azure:

{
  "name": "AzureCloud",
  "gallery": "https://gallery.azure.com/",
  "graph": "https://graph.windows.net/",
  "portal": "https://portal.azure.com",
  "graphAudience": "https://graph.windows.net/",
  "activeDirectoryDataLake": "https://datalake.azure.net/",
  "batch": "https://batch.core.windows.net/",
  "media": "https://rest.media.azure.net",
  "sqlManagement": "https://management.core.windows.net:8443/",
  "vmImageAliasDoc": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/arm-compute/quickstart-templates/aliases.json",
  "resourceManager": "https://management.azure.com/",
  "authentication": {
    "loginEndpoint": "https://login.microsoftonline.com/",
    "audiences": [ "https://management.core.windows.net/", "https://management.azure.com/" ],
    "tenant": "common",
    "identityProvider": "AAD"
  },
  "suffixes": {
    "acrLoginServer": ".azurecr.io",
    "azureDatalakeAnalyticsCatalogAndJob": "azuredatalakeanalytics.net",
    "azureDatalakeStoreFileSystem": "azuredatalakestore.net",
    "azureFrontDoorEndpointSuffix": "azurefd.net",
    "keyvaultDns": ".vault.azure.net",
    "sqlServerHostname": ".database.windows.net",
    "storage": "core.windows.net"
  }
}

Nästa steg

  • Information om hur du hämtar värden från resurser, resursgrupper eller prenumerationer finns i Resursfunktioner.