Szerepköralapú hozzáférés-vezérlés alkalmazásfejlesztőknek

A szerepköralapú hozzáférés-vezérlés (RBAC) lehetővé teszi, hogy bizonyos felhasználók vagy csoportok meghatározott engedélyekkel rendelkezzenek az erőforrások eléréséhez és kezeléséhez. Az alkalmazás RBAC eltér az Azure szerepköralapú hozzáférés-vezérlésétől és a Microsoft Entra szerepköralapú hozzáférés-vezérlésétől. Az Azure-beli egyéni szerepkörök és a beépített szerepkörök egyaránt az Azure RBAC részét képezik, amely az Azure-erőforrások kezeléséhez használható. A Microsoft Entra RBAC a Microsoft Entra-erőforrások kezelésére szolgál. Ez a cikk az alkalmazásspecifikus RBAC-t ismerteti. Az alkalmazásspecifikus RBAC implementálásával kapcsolatos információkért lásd : Alkalmazásszerepkörök hozzáadása az alkalmazáshoz, és azok fogadása a jogkivonatban.

Szerepkör-definíciók

Az RBAC egy népszerű mechanizmus az alkalmazások engedélyezésének kikényszerítésére. Amikor egy szervezet RBAC-t használ, az alkalmazásfejlesztők az egyes felhasználók vagy csoportok engedélyezése helyett szerepköröket határoznak meg. A rendszergazdák ezután szerepköröket rendelhetnek különböző felhasználókhoz és csoportokhoz, így szabályozhatják, hogy ki férhet hozzá a tartalomhoz és a funkciókhoz.

Az RBAC segítségével az alkalmazásfejlesztők kezelhetik az erőforrásokat és azok használatát. Az RBAC lehetővé teszi, hogy az alkalmazásfejlesztők szabályozni tudják az alkalmazások azon területeit, amelyekhez a felhasználók hozzáférhetnek. Rendszergazda istratorok szabályozhatják, hogy mely felhasználók férhetnek hozzá egy alkalmazáshoz a Felhasználó-hozzárendelés szükséges tulajdonsága. A fejlesztőknek figyelembe kell vennie az alkalmazás adott felhasználóit, és hogy mit tehetnek a felhasználók az alkalmazásban.

Az alkalmazásfejlesztő először létrehoz egy szerepkördefiníciót az alkalmazás regisztrációs szakaszában a Microsoft Entra felügyeleti központban. A szerepkördefiníció olyan értéket tartalmaz, amelyet az adott szerepkörhöz rendelt felhasználók kapnak vissza. A fejlesztők ezt az értéket használhatják az alkalmazáslogika implementálásához annak meghatározásához, hogy ezek a felhasználók mit tehetnek vagy mit nem tehetnek egy alkalmazásban.

RBAC-beállítások

A szerepköralapú hozzáférés-vezérlés engedélyezésének alkalmazásba való felvételekor a következő útmutatást kell alkalmazni:

  • Határozza meg az alkalmazás engedélyezési igényeihez szükséges szerepköröket.
  • A hitelesített felhasználók vonatkozó szerepköreinek alkalmazása, tárolása és lekérése.
  • Határozza meg az alkalmazás viselkedését az aktuális felhasználóhoz rendelt szerepkörök alapján.

A szerepkörök definiálása után a Microsoft Identitásplatform számos különböző megoldást támogat, amelyek felhasználhatók a hitelesített felhasználók szerepköradatainak alkalmazására, tárolására és lekérésére. Ezek a megoldások magukban foglalják az alkalmazásszerepköröket, a Microsoft Entra-csoportokat és az egyéni adattárak használatát a felhasználói szerepkörök adataihoz.

A fejlesztők rugalmasan biztosíthatják saját megvalósításukat a szerepkör-hozzárendelések alkalmazásengedélyekként való értelmezéséhez. Az engedélyek értelmezése magában foglalhatja a köztes szoftver vagy az alkalmazások vagy a kapcsolódó kódtárak platformja által biztosított egyéb lehetőségek használatát. Az alkalmazások általában jogcímként kapják meg a felhasználói szerepkör adatait, majd ezek alapján döntenek a felhasználói engedélyekről.

Alkalmazásszerepkörök

A Microsoft Entra ID segítségével alkalmazásszerepköröket határozhat meg az alkalmazáshoz, és hozzárendelheti ezeket a szerepköröket a felhasználókhoz és más alkalmazásokhoz. A felhasználóhoz vagy alkalmazáshoz hozzárendelt szerepkörök határozzák meg az alkalmazás erőforrásaihoz és műveleteihez való hozzáférés szintjét.

Amikor a Microsoft Entra ID hozzáférési jogkivonatot ad ki egy hitelesített felhasználó vagy alkalmazás számára, az tartalmazza az entitáshoz (a felhasználóhoz vagy alkalmazáshoz) hozzárendelt szerepkörök nevét a hozzáférési jogkivonat jogcímében roles . Egy olyan alkalmazás, mint egy webes API, amely megkapja a hozzáférési jogkivonatot egy kérésben, a jogcím értékei roles alapján engedélyezési döntéseket hozhat.

Csoportok

A fejlesztők a Microsoft Entra-csoportokkal is implementálhatják az RBAC-t az alkalmazásaikban, ahol az adott csoportok felhasználójának tagságát szerepkör-tagságként értelmezik. Amikor egy szervezet csoportokat használ, a jogkivonat tartalmaz egy csoport jogcímet. A csoportjogcím megadja a bérlőn belüli felhasználó összes hozzárendelt csoportjának azonosítóit.

Fontos

A csoportok használatakor a fejlesztőknek tisztában kell lenniük a túlhasználati jogcím fogalmával. Alapértelmezés szerint, ha egy felhasználó a túllépési korlátnál nagyobb tag (SAML-jogkivonatok esetén 150, JWT-jogkivonatok esetén 200, implicit folyamat használata esetén 6), a Microsoft Entra-azonosító nem bocsát ki csoportigénylést a jogkivonatban. Ehelyett tartalmaz egy "túlhasználati jogcímet" a jogkivonatban, amely azt jelzi, hogy a jogkivonat felhasználójának le kell kérdeznie a Microsoft Graph API-t a felhasználó csoporttagságainak lekéréséhez. A túlhasználati jogcímek használatával kapcsolatos további információkért lásd : Jogcímek a hozzáférési jogkivonatokban. Csak olyan csoportokat lehet kibocsátani, amelyek egy alkalmazáshoz vannak rendelve, de a csoportalapú hozzárendeléshez a Microsoft Entra id P1 vagy P2 kiadása szükséges.

Egyéni adattár

Az alkalmazásszerepkörök és a csoportok egyaránt a Microsoft Entra könyvtárban tárolják a felhasználói hozzárendelésekkel kapcsolatos információkat. A fejlesztők számára elérhető felhasználói szerepkörök adatainak kezelésére egy másik lehetőség az, ha az adatokat egy egyéni adattár címtárán kívül kezeli. Például egy SQL-adatbázisban, az Azure Table Storage-ban vagy az Azure Cosmos DB for Tableben.

Az egyéni tárterület használatával a fejlesztők további testreszabást végezhetnek, és szabályozhatják a szerepkörök felhasználókhoz rendelését és azok megjelenítését. Az extra rugalmasság azonban nagyobb felelősséget is jelent. Jelenleg például nem áll rendelkezésre olyan mechanizmus, amely ezeket az információkat a Microsoft Entra-azonosítóból visszaadott jogkivonatokban szerepeltesse. Az alkalmazásoknak le kell kérniük a szerepköröket, ha a szerepkör-információk megmaradnak egy egyéni adattárban. A szerepkörök beolvasása általában az alkalmazás fejlesztéséhez használt platform számára elérhető köztes szoftverben meghatározott bővíthetőségi pontok használatával történik. A fejlesztők felelősek az egyéni adattár megfelelő védelméért.

Az Azure AD B2C egyéni szabályzataival kezelheti az egyéni adattárakat, és belefoglalhat egyéni jogcímeket egy jogkivonatba.

Megközelítés kiválasztása

Általában az alkalmazásszerepkörök a javasolt megoldás. Az alkalmazásszerepkörök a legegyszerűbb programozási modellt biztosítják, és RBAC-implementációkhoz készültek. Bizonyos alkalmazáskövetelmények azonban azt jelezhetik, hogy egy másik megközelítés jobb megoldás lenne.

A fejlesztők alkalmazásszerepkörök használatával szabályozhatják, hogy egy felhasználó bejelentkezhet-e egy alkalmazásba, vagy egy alkalmazás beszerezhet egy hozzáférési jogkivonatot egy webes API-hoz. A fejlesztők előnyben részesítik az alkalmazásszerepköröket a Microsoft Entra-csoportokkal szemben, amikor le szeretnék írni és szabályozni az alkalmazások engedélyezési paramétereit. Egy alkalmazás például csoportokat használ az engedélyezési szünetekhez a következő bérlőben, mivel a csoportazonosító és a név is eltérő lehet. Az alkalmazásszerepköröket használó alkalmazások biztonságosak maradnak.

Bár az alkalmazásszerepkörök vagy csoportok használhatók az engedélyezéshez, a köztük lévő fő különbségek befolyásolhatják, hogy melyik a legjobb megoldás egy adott forgatókönyvhöz.

Alkalmazás-szerepkörök Microsoft Entra-csoportok Egyéni adattár
Programozási modell A legegyszerűbb. Ezek egy alkalmazásra vonatkoznak, és az alkalmazásregisztrációban vannak definiálva. Az alkalmazással együtt mozognak. Összetettebb. A csoportazonosítók bérlőnként eltérőek, és előfordulhat, hogy a túlhasználati jogcímeket figyelembe kell venni. A csoportok nem egy alkalmazásra, hanem egy Microsoft Entra-bérlőre vonatkoznak. A legösszetettebb. A fejlesztőknek olyan eszközöket kell implementálniuk, amelyekkel a szerepkör-információk tárolása és lekérése egyaránt történik.
A szerepkörértékek statikusak a Microsoft Entra-bérlők között Igen Nem A megvalósítástól függ.
A szerepkörértékek több alkalmazásban is használhatók Nem (Kivéve, ha a szerepkörkonfiguráció duplikálva van az egyes alkalmazásregisztrációkban.) Igen Igen
A címtárban tárolt információk Igen Igen Nem
Az információk jogkivonatokon keresztül érkeznek Igen (szerepkör-jogcím) Igen (Túlhasználat esetén előfordulhat, hogy a csoportok jogcímeit futásidőben kell lekérni) Nem (Futásidőben, egyéni kóddal kérhető le.)
Életre A címtárban található alkalmazásregisztrációban él. Az alkalmazásregisztráció eltávolításakor törlődik. Könyvtárban él. Akkor is érintetlen marad, ha az alkalmazásregisztráció el lett távolítva. Egyéni adattárban él. Nincs az alkalmazásregisztrációhoz kötve.

Következő lépések