Bérlőtelepítések Bicep-fájllal

A szervezet érettségével előfordulhat, hogy szabályzatokat vagy Azure-szerepköralapú hozzáférés-vezérlést (Azure RBAC) kell meghatároznia és hozzárendelnie a Microsoft Entra-bérlőn. Bérlői szintű sablonokkal deklaratívan alkalmazhat házirendeket, és globális szinten rendelhet hozzá szerepköröket.

Képzési erőforrások

Ha lépésről lépésre szeretne tájékozódni az üzembehelyezési hatókörökről, olvassa el az Erőforrások üzembe helyezése előfizetések, felügyeleti csoportok és bérlők számára a Bicep használatával című témakört.

Supported resources

Nem minden erőforrástípus helyezhető üzembe bérlői szinten. Ez a szakasz felsorolja, hogy mely erőforrástípusok támogatottak.

Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) esetén használja a következőt:

Felügyeleti csoportokban, előfizetésekben vagy erőforráscsoportokban üzembe helyező beágyazott sablonok esetén használja a következőt:

Felügyeleti csoportok létrehozásához használja a következőt:

Előfizetések létrehozásához használja a következőt:

A költségek kezeléséhez használja a következőt:

A portál konfigurálásához használja a következőt:

A beépített szabályzatdefiníciók bérlőszintű erőforrások, de egyéni szabályzatdefiníciók nem helyezhetők üzembe a bérlőben. Egy beépített szabályzatdefiníció erőforráshoz való hozzárendeléséről lásd a tenantResourceId példát.

Hatókör beállítása

A hatókör bérlőre való beállításához használja a következőt:

targetScope = 'tenant'

Szükséges hozzáférés

A sablont üzembe helyező egyszerű felhasználónak engedéllyel kell rendelkeznie az erőforrások bérlői hatókörben való létrehozásához. Az egyszerű felhasználónak engedéllyel kell rendelkeznie az üzembehelyezési műveletek végrehajtásához (Microsoft.Resources/deployments/*) és a sablonban definiált erőforrások létrehozásához. Felügyeleti csoport létrehozásához például az egyszerű felhasználónak közreműködői engedéllyel kell rendelkeznie a bérlő hatókörében. Szerepkör-hozzárendelések létrehozásához az egyszerű felhasználónak tulajdonosi engedéllyel kell rendelkeznie.

A Microsoft Entra-azonosító globális Rendszergazda istratorának nincs automatikus engedélye szerepkörök hozzárendelésére. A sablontelepítések bérlői hatókörben való engedélyezéséhez a globális Rendszergazda istratornak a következő lépéseket kell végrehajtania:

  1. Emelje a fiókhozzáférést, hogy a globális Rendszergazda istrator szerepköröket rendelhessen hozzá. További információért tekintse meg a Hozzáférési jogosultságszint emelése az összes Azure-előfizetés és felügyeleti csoport kezeléséhez szakaszt.

  2. Tulajdonos vagy közreműködő hozzárendelése a sablonok üzembe helyezéséhez szükséges taghoz.

    New-AzRoleAssignment -SignInName "[userId]" -Scope "/" -RoleDefinitionName "Owner"
    
    az role assignment create --assignee "[userId]" --scope "/" --role "Owner"
    

Az egyszerű felhasználó most már rendelkezik a sablon üzembe helyezéséhez szükséges engedélyekkel.

Üzembehelyezési parancsok

A bérlőtelepítések parancsai eltérnek az erőforráscsoport-üzemelő példányok parancsaitól.

Az Azure CLI-hez használja az az deployment tenant create (Üzembe helyezési bérlő létrehozása) lehetőséget:

az deployment tenant create \
  --name demoTenantDeployment \
  --location WestUS \
  --template-file main.bicep

Az üzembehelyezési parancsokkal és az ARM-sablonok üzembe helyezési lehetőségével kapcsolatos további információkért lásd:

Üzembe helyezés helye és neve

Bérlői szintű üzemelő példányok esetén meg kell adnia az üzembe helyezés helyét. Az üzembe helyezés helye eltér az üzembe helyezhető erőforrások helyétől. Az üzembehelyezési hely határozza meg, hogy hol tárolja az üzembehelyezési adatokat. Az előfizetési és felügyeleti csoportok üzembe helyezéséhez hely is szükséges. Az erőforráscsoport üzemelő példányai esetében az erőforráscsoport helye az üzembehelyezési adatok tárolására szolgál.

Megadhat egy nevet az üzembe helyezéshez, vagy használhatja az alapértelmezett üzembe helyezési nevet. Az alapértelmezett név a sablonfájl neve. Egy main.bicep nevű fájl üzembe helyezése például létrehozza a fő alapértelmezett üzembehelyezési nevét.

Minden üzembe helyezési név esetében a hely nem módosítható. Nem hozhat létre üzembe helyezést egy helyen, ha egy másik helyen azonos nevű meglévő üzembe helyezés van. Ha például létrehoz egy bérlői üzembe helyezést az 1. névvel a Centralusban, később nem hozhat létre egy másik üzembe helyezést az üzembe helyezés1 névvel, hanem a westus helyével. Ha a hibakódot InvalidDeploymentLocationkapja, használjon másik nevet, vagy ugyanazt a helyet, mint az előző üzembe helyezés.

Üzembehelyezési hatókörök

Bérlőn való üzembe helyezéskor az erőforrásokat a következő célokra helyezheti üzembe:

  • a bérlő
  • felügyeleti csoportok a bérlőn belül
  • előfizetések
  • erőforráscsoportok

A bővítményerőforrás hatóköre az üzembehelyezési céltól eltérő célra terjedhet ki.

A sablont üzembe helyező felhasználónak hozzáféréssel kell rendelkeznie a megadott hatókörhöz.

Ez a szakasz bemutatja, hogyan adhat meg különböző hatóköröket. Ezeket a különböző hatóköröket egyetlen sablonban kombinálhatja.

Hatókör a bérlőhöz

A Bicep-fájlban definiált erőforrások a bérlőre lesznek alkalmazva.

targetScope = 'tenant'

// create resource at tenant
resource mgName_resource 'Microsoft.Management/managementGroups@2021-04-01' = {
  ...
}

Hatókör a felügyeleti csoporthoz

A bérlőn belüli felügyeleti csoport megcélzásához adjon hozzá egy modult. A tulajdonság beállításához használja a managementGroup függvénytscope. Adja meg a felügyeleti csoport nevét.

targetScope = 'tenant'

param managementGroupName string

// create resources at management group level
module  'module.bicep' = {
  name: 'deployToMG'
  scope: managementGroup(managementGroupName)
}

Hatókör az előfizetéshez

A bérlőn belüli előfizetés megcélzásához adjon hozzá egy modult. Az előfizetési függvény használatával állítsa be a tulajdonságát scope . Adja meg az előfizetés azonosítóját.

targetScope = 'tenant'

param subscriptionID string

// create resources at subscription level
module  'module.bicep' = {
  name: 'deployToSub'
  scope: subscription(subscriptionID)
}

Hatókör az erőforráscsoporthoz

A bérlőn belüli erőforráscsoport megcélzásához adjon hozzá egy modult. A resourceGroup függvény használatával állítsa be a tulajdonságátscope. Adja meg az előfizetés azonosítóját és az erőforráscsoport nevét.

targetScope = 'tenant'

param resourceGroupName string
param subscriptionID string

// create resources at resource group level
module  'module.bicep' = {
  name: 'deployToRG'
  scope: resourceGroup(subscriptionID, resourceGroupName)
}

Felügyeleti csoport létrehozása

Az alábbi sablon létrehoz egy felügyeleti csoportot.

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

resource mgName_resource 'Microsoft.Management/managementGroups@2021-04-01' = {
  name: mgName
  properties: {}
}

Ha a fiókja nem rendelkezik engedéllyel a bérlőn való üzembe helyezéshez, akkor is létrehozhat felügyeleti csoportokat egy másik hatókörbe való üzembe helyezéssel. További információ: Felügyeleti csoport.

Szerepkör hozzárendelése

Az alábbi sablon hozzárendel egy szerepkört a bérlői hatókörhöz.

targetScope = 'tenant'

@description('principalId of the user that will be given contributor access to the resourceGroup')
param principalId string

@description('roleDefinition for the assignment - default is owner')
param roleDefinitionId string = '8e3af657-a8ff-443c-a75c-2fe8c4bcb635'

var roleAssignmentName = guid(principalId, roleDefinitionId)

resource roleAssignment 'Microsoft.Authorization/roleAssignments@2022-04-01' = {
  name: roleAssignmentName
  properties: {
    roleDefinitionId: tenantResourceId('Microsoft.Authorization/roleDefinitions', roleDefinitionId)
    principalId: principalId
  }
}

Következő lépések

Az egyéb hatókörökről az alábbiakban olvashat: