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


Az Azure-szerepkör-hozzárendelések felügyeletének skálázása feltételek és egyéni biztonsági attribútumok használatával

Az Azure szerepköralapú hozzáférés-vezérlése (Azure RBAC) előfizetésenként korlátozott szerepkör-hozzárendeléssel rendelkezik. Ha több száz vagy akár több ezer Azure-szerepkör-hozzárendelést kell létrehoznia, ezt a korlátot tapasztalhatja. Több száz vagy több ezer szerepkör-hozzárendelés kezelése nehéz lehet. A forgatókönyvtől függően csökkentheti a szerepkör-hozzárendelések számát, és egyszerűbbé teheti a hozzáférés kezelését.

Ez a cikk egy megoldást ismertet a szerepkör-hozzárendelések felügyeletének skálázására az Azure attribútumalapú hozzáférés-vezérlési (Azure ABAC) feltételek és a Microsoft Entra egyéni biztonsági attribútumok használatával a tagok számára.

Példaforgatókönyv

Vegyünk egy Contoso nevű vállalatot több ezer ügyféllel, akik a következő konfigurációt szeretnék beállítani:

  • Az ügyféladatok elosztása 128 tárfiók között biztonsági és teljesítménybeli okokból.
  • Adjon hozzá 2000 tárolót minden olyan tárfiókhoz, ahol minden ügyfélhez tartozik tároló.
  • Az egyes ügyfeleket egy egyedi Microsoft Entra-szolgáltatásnév képviseli.
  • Az egyes ügyfelek hozzáférhetnek a tárolójukban lévő objektumokhoz, más tárolókhoz azonban nem.

Ez a konfiguráció 256 000 storage blobadat-tulajdonosi szerepkör-hozzárendelést igényelhet egy előfizetésben, ami jóval meghaladja a szerepkör-hozzárendelések korlátját. Ennyi szerepkör-hozzárendelést nehéz lenne fenntartani, ha nem lehetetlen.

Diagram showing thousands for role assignments.

Példamegoldás

Ennek a forgatókönyvnek a karbantartható módon történő kezelésére a szerepkör-hozzárendelési feltételek használata használható. Az alábbi ábrán egy olyan megoldás látható, amely a 256 000 szerepkör-hozzárendelést egyetlen szerepkör-hozzárendelésre csökkenti egy feltétel használatával. A szerepkör-hozzárendelés magasabb erőforráscsoport-hatókörben van, és egy feltétel segít szabályozni a tárolókhoz való hozzáférést. A feltétel ellenőrzi, hogy a tároló neve megegyezik-e az ügyfél szolgáltatásnév egyéni biztonsági attribútumával.

Diagram showing one role assignment and a condition.

A megoldás működését a következő feltételben szereplő kifejezés teszi lehetővé:

  @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:name]
  StringEquals
  @Principal[Microsoft.Directory/CustomSecurityAttributes/Id:Contosocustomer_name]

A teljes feltétel a következőhöz hasonló lenne. A műveletek listája a szükséges műveletekhez igazítható.

(
 (
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/add/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/deleteBlobVersion/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/manageOwnership/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/modifyPermissions/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/move/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/permanentDelete/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/runAsSuperUser/action'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/read'})
  AND
  !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/write'})
 )
 OR 
 (
  @Resource[Microsoft.Storage/storageAccounts/blobServices/containers:name] StringEquals @Principal[Microsoft.Directory/CustomSecurityAttributes/Id:Contosocustomer_name]
 )
)

Miért érdemes ezt a megoldást használni?

Számos hozzáférés-vezérlési mechanizmust használhat az adatsík erőforrásaihoz való hozzáférés biztosítására.

A hozzáférési kulcsok gyakran biztosítják az adatsík erőforrásaihoz való hozzáférést. A hozzáférési kulcsok olvasási, írási és törlési engedélyeket biztosítanak annak, aki rendelkezik a hozzáférési kulccsal. Ez azt jelenti, hogy a támadók hozzáférhetnek a bizalmas adatokhoz, ha megkapják a hozzáférési kulcsokat. A hozzáférési kulcsok nem rendelkeznek identitáskötéssel, nem rendelkeznek lejárati idővel, és biztonsági kockázatot jelentenek.

A hozzáférési kulcsokhoz hasonlóan a közös hozzáférésű jogosultságkódok (SAS)-jogkivonatok nem rendelkeznek identitáskötéssel, de rendszeresen lejárnak. Az identitáskötés hiánya ugyanazokat a biztonsági kockázatokat jelenti, mint a hozzáférési kulcsok. A lejáratot úgy kell kezelnie, hogy az ügyfelek ne kaphassanak hibákat. Az SAS-jogkivonatok további kódot igényelnek a napi felügyelethez és működéshez, és jelentős többletterhelést jelenthetnek a DevOps-csapatok számára.

Az Azure RBAC központosított, részletes hozzáférés-vezérlést biztosít. Az Azure RBAC identitáskötést használ, amely csökkenti a biztonsági kockázatot. A feltételek használatával skálázhatja a szerepkör-hozzárendelések kezelését, és egyszerűbbé teheti a hozzáférés-vezérlést, mivel a hozzáférés rugalmas és dinamikus attribútumokon alapul.

Íme néhány előnye ennek a megoldásnak:

  • Központosított hozzáférés-vezérlés
  • Könnyebben karbantartható
  • Nem támaszkodik hozzáférési kulcsokra vagy SAS-jogkivonatokra
  • Nincs szükség az egyes objektumokhoz való hozzáférés kezelésére
  • Javíthatja a biztonsági helyzetet

Használhatja ezt a megoldást?

Ha hasonló forgatókönyvvel rendelkezik, kövesse az alábbi lépéseket, és ellenőrizze, hogy esetleg használhatja-e ezt a megoldást.

1. lépés: Annak megállapítása, hogy megfelel-e az előfeltételeknek

A megoldás használatához a következőket kell tennie:

2. lépés: A feltételben használható attribútumok azonosítása

A feltételben több attribútumot is használhat, például a következőket:

  • Tárolónév
  • Blob path
  • Blobindex-címkék [Kulcsok]
  • Blobindex-címkék [Értékek a kulcsban]

Saját egyéni biztonsági attribútumokat is meghatározhat a felhasználók, a vállalati alkalmazások és a felügyelt identitások számára.

További információ: Az Azure szerepkör-hozzárendelési feltételének formátuma és szintaxisa, valamint mik az egyéni biztonsági attribútumok a Microsoft Entra ID-ban?

3. lépés: Feltétel létrehozása magasabb hatókörben

Hozzon létre egy vagy több szerepkör-hozzárendelést, amelyek magasabb hatókörű feltételt használnak a hozzáférés kezeléséhez. További információ: Azure-szerepkör-hozzárendelési feltételek hozzáadása vagy szerkesztése az Azure Portal használatával.

Következő lépések