Megosztás a következőn keresztül:


Egyéni Azure-szerepkörök létrehozása vagy frissítése a Bicep használatával

Ha az Azure beépített szerepkörei nem felelnek meg a szervezet adott igényeinek, létrehozhat saját egyéni szerepköröket. Ez a cikk bemutatja, hogyan hozhat létre vagy frissíthet egyéni szerepköröket a Bicep használatával.

A Bicep tartományspecifikus nyelv (DSL), amely deklaratív szintaxist használ az Azure-erőforrások üzembe helyezéséhez. Tömör szintaxist és megbízható típusbiztonságot kínál, valamint biztosítja a kódok újrafelhasználhatóságát. A Bicep a legjobb szerzői élményt nyújtja az Azure-beli infrastruktúra-kódmegoldásokhoz.

Egyéni szerepkör létrehozásához meg kell adnia a szerepkör nevét, a szerepkör engedélyeit és a szerepkör felhasználási helyét. Ebben a cikkben létrehoz egy Egyéni szerepkör – RG-olvasó nevű szerepkört, amely erőforrás-engedélyekkel rendelkezik, amelyek előfizetési hatókörben vagy annál alacsonyabban rendelhetők hozzá.

Előfeltételek

Egyéni szerepkör létrehozásához rendelkeznie kell olyan egyéni szerepkörök létrehozásához szükséges engedélyekkel, mint például a felhasználói hozzáférés rendszergazdája.

Aktív Azure-előfizetéssel is rendelkeznie kell. Ha nem rendelkezik ilyen fiókkal, a kezdés előtt létrehozhat egy ingyenes fiókot .

A Bicep-fájl áttekintése

A cikkben használt Bicep-fájl az Azure rövid útmutatósablonjaiból származik. A Bicep-fájl négy paraméterrel és egy erőforrásszakaszsal rendelkezik. A négy paraméter a következő:

  • Műveletek tömbje az alapértelmezett értékkel ["Microsoft.Resources/subscriptions/resourceGroups/read"].
  • notActions Üres alapértelmezett értékkel rendelkező tömb.
  • Szerepkör neve alapértelmezett értékével Custom Role - RG Reader: .
  • Szerepkör leírása alapértelmezett értékével Subscription Level Deployment of a Role Definition.

Az egyéni szerepkör hozzárendelhető hatóköre az aktuális előfizetésre van állítva.

Az egyéni szerepkörök egyedi azonosítót igényelnek. Az azonosító a guid() függvénnyel hozható létre. Mivel egy egyéni szerepkörhöz a bérlő egyedi megjelenítendő neve is szükséges, a szerepkör nevét paraméterként használhatja a guid() függvényhez egy determinisztikus GUID létrehozásához. A determinisztikus GUID akkor hasznos, ha később frissítenie kell az egyéni szerepkört ugyanazzal a Bicep-fájllal.

targetScope = 'subscription'

@description('Array of actions for the roleDefinition')
param actions array = [
  'Microsoft.Resources/subscriptions/resourceGroups/read'
]

@description('Array of notActions for the roleDefinition')
param notActions array = []

@description('Friendly name of the role definition')
param roleName string = 'Custom Role - RG Reader'

@description('Detailed description of the role definition')
param roleDescription string = 'Subscription Level Deployment of a Role Definition'

var roleDefName = guid(roleName)

resource roleDef 'Microsoft.Authorization/roleDefinitions@2022-04-01' = {
  name: roleDefName
  properties: {
    roleName: roleName
    description: roleDescription
    type: 'customRole'
    permissions: [
      {
        actions: actions
        notActions: notActions
      }
    ]
    assignableScopes: [
      subscription().id
    ]
  }
}

A Bicep-fájlban definiált erőforrás a következő:

A Bicep-fájl üzembe helyezése

  1. Mentse a Bicep-fájlt main.bicep néven a helyi számítógépre.

  2. Hozzon létre egy myActions nevű változót a roleDefinition műveleteivel.

    $myActions='["Microsoft.Resources/subscriptions/resourceGroups/read"]'
    
  3. Telepítse a Bicep-fájlt az Azure CLI vagy az Azure PowerShell használatával.

    az deployment sub create --location eastus --name customRole --template-file ./main.bicep --parameters actions=$myActions
    

Amikor az üzembe helyezés befejeződött, egy üzenetnek kell megjelennie, amely jelzi, hogy az üzembe helyezés sikeres volt.

Üzembe helyezett erőforrások áttekintése

Az Egyéni szerepkör létrehozásának ellenőrzéséhez használja az Azure Portalt, az Azure CLI-t vagy az Azure PowerShellt.

az role definition list --name "Custom Role - RG Reader"

Egyéni szerepkörök frissítése

Az egyéni szerepkörök létrehozásához hasonlóan frissíthet egy meglévő egyéni szerepkört a Bicep használatával. Egyéni szerepkör frissítéséhez meg kell adnia a frissíteni kívánt szerepkört. Ha korábban egy egyedi, determinisztikus szerepkör-azonosítóval hozta létre az egyéni szerepkört a Bicep-ben, ugyanazt a Bicep-fájlt használhatja, és csak a megjelenítendő név használatával adhatja meg az egyéni szerepkört.

  1. Adja meg a frissített műveleteket.

    $myActions='["Microsoft.Resources/resources/read","Microsoft.Resources/subscriptions/resourceGroups/read"]'
    
  2. Az egyéni szerepkör frissítéséhez használja az Azure CLI-t vagy az Azure PowerShellt.

    az deployment sub create --location eastus --name customrole --template-file ./main.bicep --parameters actions=$myActions roleName="Custom Role - RG Reader"
    

    Feljegyzés

    A frissített egyéni szerepkör propagálása több percet is igénybe vehet.

Az erőforrások eltávolítása

Ha már nincs rá szükség, az Egyéni szerepkör eltávolításához használja az Azure Portalt, az Azure CLI-t vagy az Azure PowerShellt.

az role definition delete --name "Custom Role - RG Reader"

Következő lépések