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.
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.
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:
Több beépített vagy egyéni szerepkör-hozzárendelés, amelyek blobtároló-adatműveletekkel rendelkeznek. These include the following built-in roles:
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
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: