Mi az az Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC)?

A felhőbeli erőforrások hozzáférésének kezelése kritikus fontosságú a felhőt használó vállalatok számára. Az Azure szerepköralapú hozzáférés-vezérlés (RBAC) lehetővé teszi annak kezelését, kik férhetnek hozzá az Azure-erőforrásokhoz, mire használhatják őket, és mely területekhez kapnak hozzáférést.

Az Azure RBAC az Azure Resource Managerre épülő engedélyezési rendszer, amely részletes hozzáférés-kezelést biztosít az Azure-erőforrásokhoz.

Ez a videó gyors áttekintést nyújt az Azure RBAC-ről.

Mire használhatom az Azure RBAC-t?

Íme néhány példa az Azure RBAC-vel elvégezhető műveletekre:

  • Az egyik felhasználó számára engedélyezheti az előfizetésben lévő virtuális gépek, a másik felhasználó számára pedig a virtuális hálózatok kezelését
  • Engedélyezheti egy adatbázis-rendszergazdai csoport számára az előfizetésben lévő SQL-adatbázisok kezelését.
  • Engedélyezheti egy felhasználó számára az egy adott erőforráscsoportba tartozó összes erőforrás, például a virtuális gépek, a webhelyek és az alhálózatok kezelését.
  • Engedélyezheti egy alkalmazás számára az egy adott erőforráscsoportba tartozó összes erőforrás elérését.

Az Azure RBAC működése

Az Azure RBAC használatával az erőforrásokhoz való hozzáférést úgy szabályozhatja, ha Azure-szerepköröket rendel hozzá. Ez egy alapvető fogalom, amelyet meg kell érteni – ez az engedélyek kikényszerítése. A szerepkör-hozzárendelés három elemből áll: rendszerbiztonsági tagból, szerepkör-definícióból és hatókörből.

Rendszerbiztonsági tag

A rendszerbiztonsági tag egy olyan objektum, amely egy, az Azure-erőforrásokhoz hozzáférést igénylő felhasználót, csoportot, szolgáltatásnevet vagy felügyelt identitást jelöl. A biztonsági tagok bármelyikéhez hozzárendelhet szerepkört.

Diagram showing the security principal types for a role assignment.

Szerepkör-definíció

A szerepkör-definíció engedélyek gyűjteménye. Ezt általában csak szerepkörnek nevezik. A szerepkördefiníciók felsorolják azokat a műveleteket, amelyeket el lehet végezni, például olvasást, írást és törlést. A szerepkör lehet magas szintű (például tulajdonos) vagy specifikus (például virtuálisgép-olvasó).

Diagram showing role definition example for a role assignment

Az Azure számos beépített szerepkört biztosít, amelyeket használhat. Például a Virtuális gépek közreműködője szerepkör virtuális gépek létrehozását és kezelését teszi lehetővé. Ha a beépített szerepkörök nem felelnek meg a szervezet igényeinek, létrehozhat saját Egyéni Azure-szerepköröket.

Ez a videó gyors áttekintést nyújt a beépített szerepkörökről és az egyéni szerepkörökről.

Az Azure olyan adatműveletekkel rendelkezik, amelyek lehetővé teszik az objektumokon belüli adatokhoz való hozzáférést. Ha például egy felhasználó adatolvasási hozzáféréssel rendelkezik egy tárfiókhoz, akkor olvashatja az adott tárfiókban lévő blobokat vagy üzeneteket.

További információ: Az Azure-szerepkördefiníciók ismertetése.

Hatókör

A hatókör azon erőforrások készlete, amelyekre a hozzáférés vonatkozik. Szerepkörök hozzárendelésekor hatókör meghatározásával tovább korlátozhatja az engedélyezett műveletek körét. Ez hasznos lehet például, ha egy felhasználót Webhelyek közreműködője szerepkörrel szeretne felruházni, de csak egyetlen erőforráscsoportra vonatkozóan.

Az Azure-ban négy szinten adhat meg hatókört: felügyeleti csoport, előfizetés, erőforráscsoport vagy erőforrás. A hatókörök szülő-gyermek (származtatott) kapcsolatokba vannak rendezve. A szerepköröket a hatókör bármelyik szintjén hozzárendelheti.

Diagram showing scope levels for a role assignment.

A hatókörről további információt a hatókör ismertetése című témakörben talál.

Szerepkör-hozzárendelések

A szerepkör-hozzárendelés az a folyamat, amely egy szerepkördefiníciót csatol egy felhasználóhoz, csoporthoz, szolgáltatásnévhez vagy felügyelt identitáshoz egy adott hatókörben a hozzáférés biztosítása céljából. A hozzáférés szerepkör-hozzárendelés létrehozásával biztosítható, és a szerepkör-hozzárendelés törlésével vonható vissza.

Az alábbi ábrán egy példa látható szerepkör-hozzárendelésre. Ebben a példában a Marketing csoporthoz hozzárendeltük a Közreműködő szerepkört a gyógyszer-értékesítési erőforráscsoportra vonatkozóan. Ez azt jelenti, hogy a Marketing csoportba tartozó felhasználók bármilyen Azure-erőforrást létrehozhatnak és kezelhetnek a gyógyszer-értékesítési erőforráscsoportban. A marketingfelhasználók csak akkor férhetnek hozzá a gyógyszeripari értékesítési erőforráscsoporton kívüli erőforrásokhoz, ha egy másik szerepkör-hozzárendeléshez tartoznak.

Diagram showing how security principal, role definition, and scope create a role assignment.

Szerepköröket az Azure Portal, az Azure CLI, az Azure PowerShell, az Azure SDK-k vagy a REST API-k használatával rendelhet hozzá.

További információ: Azure-szerepkör hozzárendelésének lépései.

Csoportok

A szerepkör-hozzárendelések a csoportok számára tranzitívak, ami azt jelenti, hogy ha egy felhasználó tagja egy csoportnak, és ez a csoport egy másik, szerepkör-hozzárendeléssel rendelkező csoport tagja, akkor a felhasználó rendelkezik a szerepkör-hozzárendeléshez szükséges engedélyekkel.

Diagram showing how role assignments are transitive for groups.

Több szerepkör-hozzárendelés

Mi történik, ha több egymást átfedő szerepkör-hozzárendeléssel rendelkezik? Az Azure RBAC egy additív modell, így a tényleges engedélyek a szerepkör-hozzárendelések összege. Vegye figyelembe az alábbi példát, amikor egy felhasználó megkapja a Közreműködő szerepkört az előfizetés hatókörében, az Olvasó szerepkört pedig egy erőforráscsoportban. A Közreműködői engedélyek és az Olvasó engedélyek összege tulajdonképpen az előfizetés közreműködői szerepköre. Ezért ebben az esetben az Olvasó szerepkör-hozzárendelésnek nincs hatása.

Diagram showing how multiple role assignments overlap.

Hogyan határozza meg az Azure RBAC, hogy egy felhasználó rendelkezik-e hozzáféréssel egy erőforráshoz

Az alábbiakban az Azure RBAC által használt magas szintű lépéseket követjük annak megállapításához, hogy rendelkezik-e hozzáféréssel egy erőforráshoz. Ezek a lépések az Azure Resource Managerre vagy az Azure RBAC-vel integrált adatsík-szolgáltatásokra vonatkoznak. Ez hasznos annak megértéséhez, hogy megpróbál-e elhárítani egy hozzáférési problémát.

  1. A felhasználó (vagy szolgáltatásnév) jogkivonatot szerez be az Azure Resource Managerhez.

    A jogkivonatban szerepelnek a felhasználó csoporttagságai (beleértve a tranzitív csoporttagságokat is).

  2. A felhasználó REST API-hívást indít az Azure Resource Managerhez a csatolt jogkivonattal.

  3. Az Azure Resource Manager lekéri az azon erőforrásra érvényes összes szerepkör-hozzárendelést és megtagadás-hozzárendelést, amelyen a művelet történik.

  4. Ha van érvényes megtagadás-hozzárendelés, megtagadja a hozzáférést. Ellenkező esetben a kiértékelés folytatódik.

  5. Az Azure Resource Manager leszűkíti a felhasználóra vagy a csoportjára érvényes szerepkör-hozzárendeléseket, és meghatározza, hogy a felhasználó milyen szerepkörökkel rendelkezik ehhez az erőforráshoz.

  6. Az Azure Resource Manager meghatározza, hogy az API-hívásban lévő művelet szerepel-e a felhasználó ezen erőforrásra vonatkozó szerepköreiben. Ha a szerepkörökben helyettesítő karakter () szerepelActions, a rendszer az érvényes engedélyeket úgy számítja ki, hogy kivonja az NotActions engedélyezettbőlActions.* Hasonlóképpen ugyanez a kivonás történik minden adatművelet esetében.

    Actions - NotActions = Effective management permissions

    DataActions - NotDataActions = Effective data permissions

  7. Ha a felhasználó nem rendelkezik szerepkörrel a művelettel a kért hatókörben, a hozzáférés nem engedélyezett. Ellenkező esetben a rendszer kiértékeli a feltételeket.

  8. Ha a szerepkör-hozzárendelés feltételekkel rendelkezik, azokat kiértékeljük. Ellenkező esetben a hozzáférés engedélyezett.

  9. Ha a feltételek teljesülnek, a hozzáférés engedélyezett. Ellenkező esetben a hozzáférés nem engedélyezett.

Az alábbi diagram a kiértékelési logika összegzése.

Evaluation logic flowchart for determining access to a resource.

Hol vannak tárolva az Azure RBAC-adatok?

A szerepkördefiníciók, a szerepkör-hozzárendelések és a megtagadási hozzárendelések globálisan vannak tárolva, hogy az erőforrást létrehozó régiótól függetlenül hozzáférhessen az erőforrásokhoz.

Szerepkör-hozzárendelés vagy bármely más Azure RBAC-adat törlésekor az adatok globálisan törlődnek. Azok a tagok, amelyek azure RBAC-adatokon keresztül fértek hozzá egy erőforráshoz, elveszítik a hozzáférésüket.

Miért globális az Azure RBAC-adatok?

Az Azure RBAC-adatok globálisak, így az ügyfelek időben hozzáférhetnek az erőforrásokhoz, függetlenül attól, hogy honnan férnek hozzá. Az Azure RBAC-t az Azure Resource Manager kényszeríti ki, amely globális végponttal rendelkezik, és a kéréseket a legközelebbi régióba irányítják a sebesség és a rugalmasság érdekében. Ezért az Azure RBAC-t minden régióban kötelező kikényszeríteni, és az adatok minden régióba replikálódnak. További információ: Az Azure Resource Manager rugalmassága.

Gondolja át a következő példát. Arina létrehoz egy virtuális gépet Kelet-Ázsiában. Bob, aki Arina csapatának tagja, a Egyesült Államok dolgozik. Bobnak hozzá kell férnie a Kelet-Ázsiában létrehozott virtuális géphez. Ahhoz, hogy Bob időben hozzáférjen a virtuális géphez, az Azure-nak globálisan replikálnia kell azt a szerepkör-hozzárendelést, amely hozzáférést biztosít Bobnak a virtuális géphez bárhonnan, ahol Bob van.

Diagram showing Azure RBAC data in multiple regions.

Licenckövetelmények

A funkció használata ingyenes, és az Azure-előfizetés részét képezi.

Következő lépések