A Bicep hatókörfüggvényei

Ez a cikk a Bicep-függvényeket ismerteti a hatókörértékek lekéréséhez.

managementGroup

managementGroup()

Egy objektumot ad vissza az aktuális üzemelő példány felügyeleti csoportjának tulajdonságaival.

managementGroup(identifier)

A hatókör felügyeleti csoportra való beállításához használt objektumot ad vissza.

Névtér: az.

Megjegyzések

managementGroup() csak felügyeleti csoportok üzemelő példányaihoz használható. Visszaadja az üzembe helyezési művelet aktuális felügyeleti csoportját. Akkor használja, ha egy hatókörobjektumot kér le, vagy az aktuális felügyeleti csoport tulajdonságait kapja meg.

managementGroup(identifier) bármilyen üzembehelyezési hatókörhöz használható, de csak a hatókörobjektum lekérésekor. A felügyeleti csoport tulajdonságainak lekéréséhez nem adhatja meg a felügyeleti csoport azonosítóját.

Paraméterek

Paraméter Kötelező Típus Description
Azonosító No sztring Annak a felügyeleti csoportnak az egyedi azonosítója, amelybe üzembe kíván helyezni. Ne használja a felügyeleti csoport megjelenítendő nevét. Ha nem ad meg értéket, a rendszer az aktuális felügyeleti csoportot adja vissza.

Visszatérési érték

A tulajdonság modul- vagy bővítményerőforrás-típuson való beállításához scope használt objektum. Vagy egy objektum, amely az aktuális felügyeleti csoport tulajdonságaival rendelkezik.

Példa felügyeleti csoportra

Az alábbi példa egy modul hatókörét egy felügyeleti csoportra állítja be.

param managementGroupIdentifier string

module  'mgModule.bicep' = {
  name: 'deployToMG'
  scope: managementGroup(managementGroupIdentifier)
}

A következő példa az aktuális felügyeleti csoport tulajdonságait adja vissza.

targetScope = 'managementGroup'

var mgInfo = managementGroup()

output mgResult object = mgInfo

A visszaadott kimenet:

"mgResult": {
  "type": "Object",
  "value": {
    "id": "/providers/Microsoft.Management/managementGroups/examplemg1",
    "name": "examplemg1",
    "properties": {
      "details": {
        "parent": {
          "displayName": "Tenant Root Group",
          "id": "/providers/Microsoft.Management/managementGroups/00000000-0000-0000-0000-000000000000",
          "name": "00000000-0000-0000-0000-000000000000"
        },
        "updatedBy": "00000000-0000-0000-0000-000000000000",
        "updatedTime": "2020-07-23T21:05:52.661306Z",
        "version": "1"
      },
      "displayName": "Example MG 1",
      "tenantId": "00000000-0000-0000-0000-000000000000"
    },
    "type": "/providers/Microsoft.Management/managementGroups"
  }
}

A következő példa létrehoz egy új felügyeleti csoportot, és ezzel a függvénnyel állítja be a szülő felügyeleti csoportot.

targetScope = 'managementGroup'

param mgName string = 'mg-${uniqueString(newGuid())}'

resource newMG 'Microsoft.Management/managementGroups@2020-05-01' = {
  scope: tenant()
  name: mgName
  properties: {
    details: {
      parent: {
        id: managementGroup().id
      }
    }
  }
}

output newManagementGroup string = mgName

resourceGroup

resourceGroup()

Az aktuális erőforráscsoportot képviselő objektumot ad vissza.

resourceGroup(resourceGroupName)

And

resourceGroup(subscriptionId, resourceGroupName)

A hatókör erőforráscsoportra való beállításához használt objektumot adja vissza.

Névtér: az.

Megjegyzések

A resourceGroup függvénynek két különböző felhasználási módja van. Az egyik használat a hatókör modul- vagy bővítményerőforrás-típuson való beállítására használható. A másik használat az aktuális erőforráscsoport részleteinek lekérése. A függvény elhelyezése határozza meg a használatát. A tulajdonság beállításakor egy scope hatókörobjektumot ad vissza.

resourceGroup() a hatókör beállításához vagy az erőforráscsoport részleteinek lekéréséhez használható.

resourceGroup(resourceGroupName) és resourceGroup(subscriptionId, resourceGroupName) csak a hatókör beállítására használható.

Paraméterek

Paraméter Kötelező Típus Description
resourceGroupName No sztring Annak az erőforráscsoportnak a neve, amelybe üzembe kíván helyezni. Ha nem ad meg értéket, a függvény az aktuális erőforráscsoportot adja vissza.
subscriptionId No sztring Annak az előfizetésnek az egyedi azonosítója, amelybe üzembe kíván helyezni. Ha nem ad meg értéket, a függvény az aktuális előfizetést adja vissza.

Visszatérési érték

A hatókör beállításakor a függvény egy olyan objektumot ad vissza, amely érvényes egy scope modul vagy bővítmény erőforrástípus tulajdonságára.

Az erőforráscsoport részleteinek lekéréséhez használt függvény a következő formátumot adja vissza:

{
  "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}",
  "name": "{resourceGroupName}",
  "type":"Microsoft.Resources/resourceGroups",
  "location": "{resourceGroupLocation}",
  "managedBy": "{identifier-of-managing-resource}",
  "tags": {
  },
  "properties": {
    "provisioningState": "{status}"
  }
}

A managedBy tulajdonság csak olyan erőforráscsoportok esetén lesz visszaadva, amelyek egy másik szolgáltatás által felügyelt erőforrásokat tartalmaznak. Felügyelt alkalmazások, Databricks és AKS esetén a tulajdonság értéke a kezelési erőforrás erőforrás-azonosítója.

Példa erőforráscsoportra

Az alábbi példa egy modult egy erőforráscsoportra terjed ki.

param resourceGroupName string

module exampleModule 'rgModule.bicep' = {
  name: 'exampleModule'
  scope: resourceGroup(resourceGroupName)
}

A következő példa az erőforráscsoport tulajdonságait adja vissza.

output resourceGroupOutput object = resourceGroup()

Egy objektumot ad vissza a következő formátumban:

{
  "id": "/subscriptions/{subscription-id}/resourceGroups/examplegroup",
  "name": "examplegroup",
  "type":"Microsoft.Resources/resourceGroups",
  "location": "southcentralus",
  "properties": {
    "provisioningState": "Succeeded"
  }
}

A resourceGroup függvény gyakran használja az erőforrásokat az erőforráscsoporttal azonos helyen. Az alábbi példa az erőforráscsoport helyét használja egy alapértelmezett paraméterértékhez.

param location string = resourceGroup().location

A resourceGroup függvénnyel címkéket is alkalmazhat az erőforráscsoportból egy erőforrásra. További információ: Címkék alkalmazása erőforráscsoportból.

előfizetést

subscription()

Az aktuális üzemelő példány előfizetésének adatait adja vissza.

subscription(subscriptionId)

A hatókör előfizetésre való beállításához használt objektumot ad vissza.

Névtér: az.

Megjegyzések

Az előfizetési függvénynek két különböző felhasználási módja van. Az egyik használat a hatókör modul- vagy bővítményerőforrás-típuson való beállítására használható. A másik használat az aktuális előfizetés részleteinek lekérése. A függvény elhelyezése határozza meg a használatát. A tulajdonság beállításakor egy scope hatókörobjektumot ad vissza.

subscription(subscriptionId) csak a hatókör beállítására használható.

subscription() a hatókör beállításához vagy az előfizetés részleteinek lekéréséhez használható.

Paraméterek

Paraméter Kötelező Típus Description
subscriptionId No sztring Annak az előfizetésnek az egyedi azonosítója, amelybe üzembe kíván helyezni. Ha nem ad meg értéket, a függvény az aktuális előfizetést adja vissza.

Visszatérési érték

A hatókör beállításakor a függvény egy olyan objektumot ad vissza, amely érvényes egy scope modul vagy bővítmény erőforrástípus tulajdonságára.

Az előfizetés részleteinek lekéréséhez használt függvény a következő formátumot adja vissza:

{
  "id": "/subscriptions/{subscription-id}",
  "subscriptionId": "{subscription-id}",
  "tenantId": "{tenant-id}",
  "displayName": "{name-of-subscription}"
}

Példa előfizetésre

Az alábbi példa egy modulra terjed ki az előfizetésre.

module exampleModule 'subModule.bicep' = {
  name: 'deployToSub'
  scope: subscription()
}

A következő példa egy előfizetés adatait adja vissza.

output subscriptionOutput object = subscription()

Bérlő

tenant()

A hatókör bérlőre állításához használt objektumot ad vissza.

Vagy

A felhasználó bérlőjének visszaadása.

Névtér: az.

Megjegyzések

tenant() bármilyen üzembe helyezési hatókörrel használható. Mindig az aktuális bérlőt adja vissza. Ezzel a függvénnyel beállíthatja egy erőforrás hatókörét, vagy lekérheti az aktuális bérlő tulajdonságait.

Visszatérési érték

A tulajdonság modul- vagy bővítményerőforrás-típuson való beállításához scope használt objektum. Vagy egy objektum, amely az aktuális bérlőre vonatkozó tulajdonságokkal rendelkezik.

Példa bérlőre

Az alábbi példa egy, a bérlőn üzembe helyezett modult mutat be.

module exampleModule 'tenantModule.bicep' = {
  name: 'deployToTenant'
  scope: tenant()
}

A következő példa egy bérlő tulajdonságait adja vissza.

var tenantInfo = tenant()

output tenantResult object = tenantInfo

A visszaadott kimenet:

"tenantResult": {
  "type": "Object",
  "value": {
    "countryCode": "US",
    "displayName": "Contoso",
    "id": "/tenants/00000000-0000-0000-0000-000000000000",
    "tenantId": "00000000-0000-0000-0000-000000000000"
  }
}

Egyes erőforrásokhoz egy tulajdonság bérlőazonosítójának beállítására van szükség. A bérlőazonosító paraméterként való átadása helyett lekérheti a bérlői függvénnyel.

resource kv 'Microsoft.KeyVault/vaults@2021-06-01-preview' = {
  name: 'examplekeyvault'
  location: 'westus'
  properties: {
    tenantId: tenant().tenantId
    ...
  }
}

Következő lépések

Az üzembehelyezési hatókörökről az alábbiakban olvashat bővebben: