Mi az Azure attribútumalapú hozzáférés-vezérlés (Azure ABAC)?

Az attribútumalapú hozzáférés-vezérlés (ABAC) egy engedélyezési rendszer, amely a hozzáférési kérések biztonsági tagokhoz, erőforrásokhoz és környezetéhez társított attribútumok alapján határozza meg a hozzáférést. Az ABAC-vel az attribútumok alapján biztonsági egyszerű hozzáférést biztosíthat egy erőforráshoz. Az Azure ABAC az Azure-hoz készült ABAC implementációjára utal.

Mik azok a szerepkör-hozzárendelési feltételek?

Az Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) egy engedélyezési rendszer, amely segít annak kezelésében, hogy kinek van hozzáférése az Azure-erőforrásokhoz, mit tehetnek ezekkel az erőforrásokkal, és milyen területekhez férhetnek hozzá. Az Azure RBAC a legtöbb esetben szerepkördefiníciók és szerepkör-hozzárendelések használatával biztosítja a szükséges hozzáférés-kezelést. Bizonyos esetekben azonban érdemes lehet részletesebb hozzáférés-kezelést biztosítani, vagy egyszerűsíteni a szerepkör-hozzárendelések százainak kezelését.

Az Azure ABAC az Azure RBAC-re épít úgy, hogy adott műveletek kontextusában attribútumokon alapuló szerepkör-hozzárendelési feltételeket ad hozzá. A szerepkör-hozzárendelési feltétel egy további ellenőrzés, amelyet igény szerint hozzáadhat a szerepkör-hozzárendeléshez, hogy részletesebb hozzáférés-vezérlést biztosítson. A feltétel kiszűri a szerepkördefiníció és a szerepkör-hozzárendelés részeként megadott engedélyeket. Hozzáadhat például egy feltételt, amely megköveteli, hogy egy objektum egy adott címkével rendelkezzen az objektum olvasásához. Adott erőforrásokhoz való hozzáférést nem tagadhatja meg explicit módon feltételekkel.

Miért érdemes feltételeket használni?

A szerepkör-hozzárendelési feltételek használatának három elsődleges előnye van:

  • Részletesebb hozzáférés-vezérlés biztosítása – A szerepkör-hozzárendelések egy szerepkördefiníciót használnak műveletekkel és adatműveletekkel a biztonsági tagok engedélyeinek megadásához. A feltételek megírásával szűrheti ezeket az engedélyeket a részletesebb hozzáférés-vezérlés érdekében. Adott műveletekhez feltételeket is hozzáadhat. Például csak akkor adhat Johnnak olvasási hozzáférést az előfizetésében lévő blobokhoz, ha a blobok Project=Blue címkével vannak megjelölve.
  • Segítség a szerepkör-hozzárendelések számának csökkentéséhez – Minden Azure-előfizetésnek jelenleg van szerepkör-hozzárendelési korlátja. Vannak olyan forgatókönyvek, amelyek több ezer szerepkör-hozzárendelést igényelnek. Az összes szerepkör-hozzárendelést kezelni kell. Ezekben a forgatókönyvekben olyan feltételeket adhat hozzá, amelyek jelentősen kevesebb szerepkör-hozzárendelést használnak.
  • Olyan attribútumok használata, amelyek konkrét üzleti jelentéssel rendelkeznek – A feltételek lehetővé teszik, hogy olyan attribútumokat használjon, amelyek konkrét üzleti jelentéssel rendelkeznek a hozzáférés-vezérlésben. Néhány attribútum például a projekt neve, a szoftverfejlesztési szakasz és a besorolási szintek. Ezeknek az erőforrásattribútumoknak az értékei dinamikusak és változnak, ahogy a felhasználók csapatok és projektek között mozognak.

Példaforgatókönyvek feltételekhez

Több olyan eset is van, amikor előfordulhat, hogy feltételt szeretne hozzáadni a szerepkör-hozzárendeléshez. Íme néhány példa.

  • Blobok olvasása a Project=Cascade címkével
  • Az új blobok tartalmazzák a Project=Cascade címkét
  • A meglévő blobokat fel kell címkézni legalább egy Project-kulccsal vagy programkulcsmal
  • A meglévő blobokat Project-kulccsal és Kaszkádolt, Baker vagy Skagit értékekkel kell megjelölni
  • Blobok olvasása, írása vagy törlése Blobs-example-container nevű tárolókban
  • Blobokhoz való hozzáférés olvasása blobok-example-container nevű tárolókban olvasási útvonallal
  • Blobok írása Contosocorp nevű tárolókban feltöltési/contoso elérési úttal
  • Blobokhoz való hozzáférés olvasása a Program=Alpine címkével és a naplók elérési útjával
  • Olvasási hozzáférés a Project=Baker címkével rendelkező blobokhoz, és a felhasználónak van egyező Project=Baker attribútuma
  • A blobokhoz való hozzáférés olvasása egy adott dátum/időtartomány alatt.
  • Blobok írása csak privát hivatkozáson vagy egy adott alhálózaton keresztül.

A példák létrehozásáról további információt a Blob Storage Azure-beli szerepkör-hozzárendelési feltételeinek példáiban talál.

Hol adhatók hozzá feltételek?

Jelenleg olyan beépített vagy egyéni szerepkör-hozzárendelésekhez lehet feltételeket adni, amelyek blobtároló- vagy üzenetsortár-adatműveletekkel rendelkeznek. A feltételek a szerepkör-hozzárendeléssel azonos hatókörben lesznek hozzáadva. A szerepkör-hozzárendelésekhez hasonlóan rendelkeznie Microsoft.Authorization/roleAssignments/write kell a feltétel hozzáadásához szükséges engedélyekkel.

Íme néhány blobtároló attribútum, amelyet a feltételekben használhat.

  • Számla neve
  • Blobindex-címkék
  • Blob elérési útja
  • Blobelőtag
  • Tárolónév
  • Titkosítási hatókör neve
  • Aktuális verzió
  • Engedélyezve van a hierarchikus névtér
  • Privát hivatkozás
  • Pillanatkép
  • UTC most (az aktuális dátum és idő a koordinált egyetemes idő)
  • Verzióazonosító

Hogyan néz ki egy feltétel?

Új vagy meglévő szerepkör-hozzárendelésekhez feltételeket adhat hozzá. Itt található a Storage Blob Data Reader szerepkör, amely egy Chandra nevű felhasználóhoz lett hozzárendelve egy erőforráscsoport hatókörében. Hozzá lett adva egy feltétel is, amely csak a Project=Cascade címkével engedélyezi a blobok olvasási elérését.

Egy feltétellel rendelkező szerepkör-hozzárendelés diagramja.

Ha Chandra a Project=Cascade címke nélkül próbál blobokat olvasni, a hozzáférés nem engedélyezett.

A hozzáférés diagramja nem engedélyezett feltétellel.

Így néz ki a feltétel az Azure Portalon:

Az Azure Portal feltételszerkesztőjének képernyőképe, amelyen a blobindexcímkék értékeit tartalmazó buildkifejezés-szakasz látható.

Így néz ki a feltétel a kódban:

(
    (
        !(ActionMatches{'Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read'}
        AND NOT
        SubOperationMatches{'Blob.List'})
    )
    OR
    (
        @Resource[Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags:Project<$key_case_sensitive$>] StringEqualsIgnoreCase 'Cascade'
    )
)

A feltételek formátumával kapcsolatos további információkért tekintse meg az Azure szerepkör-hozzárendelési feltételének formátumát és szintaxisát.

A feltételfunkciók állapota

Az alábbi táblázat a feltételfunkciók állapotát sorolja fel:

Szolgáltatás Állapot Dátum
Környezeti attribútumok használata egy feltételben FE 2024. április
Feltételek hozzáadása a feltételszerkesztővel az Azure Portalon FE 2022. október
Feltételek hozzáadása az Azure PowerShell, az Azure CLI vagy a REST API használatával FE 2022. október
Erőforrás- és kérelemattribútumok használata az Azure Storage-erőforrások, a hozzáférési attribútumtípusok és a tárfiók teljesítményszintjeinek adott kombinációihoz. További információkért tekintse meg az Azure Storage feltételfunkcióinak állapotát. FE 2022. október
Egyéni biztonsági attribútumok használata egy egyszerű felhasználón egy feltételben FE 2023. november

Feltételek és Microsoft Entra PIM

Feltételeket is hozzáadhat a jogosult szerepkör-hozzárendelésekhez a Microsoft Entra Privileged Identity Management (Microsoft Entra PIM) azure-erőforrásokhoz való használatával. A Microsoft Entra PIM használatával a végfelhasználóknak aktiválnia kell egy jogosult szerepkör-hozzárendelést, hogy engedélyt kapjon bizonyos műveletek végrehajtására. A Microsoft Entra PIM-ben a feltételek használata lehetővé teszi, hogy ne csak a felhasználó hozzáférését korlátozza egy erőforráshoz részletes feltételekkel, hanem a Microsoft Entra PIM használatával is biztonságossá teheti azt egy időhöz kötött beállítással, jóváhagyási munkafolyamattal, naplózási nyomvonallal stb. További információ: Azure-erőforrásszerepkörök hozzárendelése a Privileged Identity Managementben.

Terminológia

Az Azure RBAC és az Azure ABAC jobb megértéséhez tekintse meg a következő kifejezések listáját.

Időszak Definíció
attribútumalapú hozzáférés-vezérlés (ABAC) Olyan engedélyezési rendszer, amely a biztonsági tagokhoz, erőforrásokhoz és környezethez társított attribútumok alapján határozza meg a hozzáférést. Az ABAC-vel az attribútumok alapján biztonsági egyszerű hozzáférést biztosíthat egy erőforráshoz.
Azure ABAC Az Azure-hoz készült ABAC implementációjára hivatkozik.
szerepkör-hozzárendelés feltétele További ellenőrzés, amelyet igény szerint hozzáadhat a szerepkör-hozzárendeléshez, hogy részletesebb hozzáférés-vezérlést biztosítson.
attribútum Ebben az összefüggésben egy kulcs-érték pár, például a Project=Blue, ahol a Project az attribútumkulcs, a Kék pedig az attribútum értéke. Az attribútumok és címkék a hozzáférés-vezérlési célok szinonimái.
Kifejezés Igaz vagy hamis értéket kiértékelő feltételben lévő utasítás. A kifejezések formátuma attribútum>operátorérték<><>.<

Korlátok

Íme néhány feltételkorlát.

Erőforrás Korlát Jegyzetek
Kifejezések száma feltételenként a vizualizációszerkesztő használatával 5 A kódszerkesztővel ötnél több kifejezést is hozzáadhat

Ismert problémák

Íme a feltételekkel kapcsolatos ismert problémák:

  • Ha a Microsoft Entra Privileged Identity Management (PIM) és az egyéni biztonsági attribútumokat használja, az Egyszerű elem nem jelenik meg az attribútumforrásban feltétel hozzáadásakor.

Következő lépések