XACML
Az XACML (eXtensible Access Control Markup Language) egy olyan kiterjeszthető nyelv, mellyel XML formátumban lehet a felhasználók erőforrásokhoz való hozzáférésének karbantartását szabványos formában leírni. Kifinomult elosztott jogosultság ellenőrzést hivatott végezni. Mellette még ismert az SAML (Security Assertion Markup Language).
Az XACML-modell egy sokszereplős elosztott biztonsági modell, amely rugalmas jogosultság ellenőrzést tesz lehetővé. A modellben szereplő szoftvermodul egyszerre több szerepet is betölthet, tehát fizikailag nem feltétlenül kell nagy számú elemnek szerepelnie.
A legelső verzió a 2.0 amelyet az OASIS adott ki 2005. február 1-jén.
Később már elérhetővé vált az XACML 3.0 vázlata, 2009. április 16-tól.[1]
Az XACML 3.0 2011 májusában elnyerte az Influential Standardization Efforts díjat az Európai Személyazonossági Konferencián (European Identity Conference) München-ben.[2]
Terminológia
Nem normatív terminológia (részletesebben RFC 2904, kivéve PAP)
Kifejezés | Leírás |
---|---|
PAP | Policy Administration Point - Rész amely egy eljárásmódot kezel. |
PDP | Policy Decision Point - Rész amely megbecsüli és kiosztja a döntés engedélyezését. |
PEP | Policy Enforcement Point - A pont ahol megszakítjuk a felhasználó hozzáférési kérelmét az erőforráshoz és kikényszeríti a PDP döntést. |
PIP | Policy Information Point - A pont amikor gondoskodunk a külső információkról a PDP-nek, mint amilyen az LDAP attribútum információja. |
Az XACML modell és folyamat
Modell
A következő ábrán látható, hogy miként is épül fel a modell.
![](http://upload.wikimedia.org/wikipedia/commons/4/47/XACMLmodell.jpg)
Folyamat
Az XACML folyamat a következő ellenőrzési lépésekből áll:
- A házirend-adminisztrációs pont (Policy Administration Point, PAP) tartja nyilván a házirendeket és elérhetővé teszi azokat a házirend döntési pont (Policy Decision Point, PDP) számára. Ezek a házirendek egy-egy adott erőforrásra vonatkoznak.
- A hozzáférés kérő entitás a kéréseit minden esetben a házirend-végrehajtó pontnak (Policy Enforcement Point, PEP) küldi el.
- A PEP a kérést a Kontextuskezelő felé továbbítja, amely ettől a ponttól kezdve gyakorlatilag közvetít a többi modul között az ellenőrzési folyamat során.
- A Kontextuskezelő egy XACML kérést generál a PDP felé.
- A PDP – ismervén, hogy a házirend milyen tulajdonságok alapján rendelkezik, – a megfelelő attribútumokra vonatkozó információkérést visszaküldi a Kontextuskezelőnek.
- A Kontextuskezelő a PDP által kért attribútumokra vonatkozó kérést elküldi a házirend információs pontnak (Policy Information Point, PIP). A PIP tudja, hogy az egyes attribútumokat honnan és milyen módon lehet lekérdezni.
- A PIP összegyűjti a megfelelő helyekről (erőforrások, környezet, személyek) a kért attribútumokat.
- A PIP visszaküldi a kért attribútumokat a Kontextuskezelőnek.
- Ha szükséges, a Kontextuskezelő az attribútumokkal együtt a megcélzott erőforrás tartalmának egy részét is begyűjtheti (tartalomalapú döntések esetén szükség lehet erre).
- A Kontextuskezelő továbbítja a kért attribútumokat (és az esetleges tartalmat) a PDP-nek.
- A PDP meghozza a döntést az ismert házirendek alapján, és a döntést visszaküldi a Kontextuskezelőnek.
- A Kontextuskezelő a PEP felé továbbítja a döntést.
- A PEP eleget tesz a kötelezettségeinek. Ezek olyan további szükséges tevékenységek, amelyeket a PDP a döntéssel együtt előír a PEP számára. A kötelezettségek jellemzően olyan formális követelményeknek tesznek eleget, amelyeket más módon nehéz megfogalmazni hozzáférési szabályok mentén.
- Amennyiben a hozzáférés engedélyezett, úgy a PEP lehetővé teszi az erőforráshoz való hozzáférést, máskülönben tiltja azt.
Jegyzetek
Külső hivatkozások
- eXtensible Access Control Markup Language
- XACML Overview[halott link]
- HERAS-AF: An Open Source Project providing an XACML-based Security Framework
- JBoss XACML - Open Source LGPL licensed library
- OASIS XACML committee website
- OASIS declaration of issues with two software patents of IBM
- XACML 2.0 PDP and PAP implemented as Axis2 web services
- XACML authorization for many PAM enabled applications
- SICSACML XACML
- SunXACML
- EnterpriseJavaXACML
- A Non-Technical Notation for XACML
- ZXID http://zxid.org Archiválva 2012. március 11-i dátummal a Wayback Machine-ben
Informatikai portál • összefoglaló, színes tartalomajánló lap