Relationsbaserad åtkomstkontroll

Inom datorsystemsäkerhet definierar Relationsbaserad åtkomstkontroll (ReBAC) ett auktoriseringsparadigm där en subjekts tillstånd att komma åt en resurs definieras av närvaron av relationer mellan dessa subjekt och resurser.

I allmänhet utförs auktorisering i ReBAC genom att korsa den riktade grafen över relationer. Noderna och kanterna på denna graf liknar mycket trippel i dataformatet Resource Description Framework (RDF) . ReBAC-system tillåter hierarkier av relationer, och vissa tillåter mer komplexa definitioner som inkluderar algebraiska operatorer på relationer som union, skärningspunkt och skillnad.

ReBAC blev populär i och med framväxten av webbapplikationer för sociala nätverk, där användare måste kontrollera sin personliga information baserat på deras relation till datamottagaren snarare än mottagarens roll.

Till skillnad från rollbaserad åtkomstkontroll (RBAC) , som definierar roller som har en specifik uppsättning privilegier som är kopplade till dem och till vilka ämnen är tilldelade, tillåter ReBAC (som ABAC), att definiera mer finkorniga behörigheter. Till exempel, om ett ReBAC-system definierar resurser av typen document , som kan tillåta en åtgärdsredigerare , om systemet innehåller relationen ('alice', 'editor', 'document:budget') , då kan ämnet Alice redigera den specifika resursen document:budget . Nackdelen med ReBAC är att även om den tillåter mer finkornig åtkomst, betyder det att applikationen kan behöva utföra fler auktoriseringskontroller.

ReBAC-system är deny-by-default och tillåter att bygga RBAC-system ovanpå dem.

Historia

Termen ReBAC myntades av Carrie E. Gates 2006.

2019 publicerade Google en artikel som presenterade "Zanzibar: Googles konsekventa, globala auktorisationssystem". Uppsatsen definierar ett system som består av en namnområdeskonfiguration och relationsdata uttryckt som trippel.

Sedan utgivningen av denna tidning har flera företag byggt kommersiella och öppen källkodserbjudanden av ReBAC-system.

Se även

externa länkar