Attribute-based access control: Difference between revisions

Content deleted Content added
Fixed spelling
Small content addition.
Line 1:
'''Attribute-based access control''' (ABAC) defines an [[access control]] paradigm whereby access rights are granted to users through the use of [[Policy|policies]] which combine attributes together. The policies can use any type of [[Attribute (computing)|attributes]] (user attributes, resource attributes, object, environment attributes etc.). UnlikeThis Role-Basedmodel Accesssupports Control[[Boolean (RBAC)Logic|Boolean logic]], in which employsrules pre-definedcontain roles"IF, thatTHEN" carrystatements aabout specificwho setis ofmaking privilegesthe associatedrequest, withthe themresource, and tothe whichaction. subjectsFor areexample: assigned,IF the key difference with ABACrequestor is the concept of policies that express a complexmanager, BooleanTHEN ruleallow set[[File thatsystem canpermissions|read/write evaluateaccess]] manyto differentsensitive attributes.data<ref>{{Cite web |date=2014 |url=httphttps://nvlpubswww.nistjerichosystems.govcom/nistpubstechnology/SpecialPublicationsglossaryterms/NISTattribute_based_access_control.SP.800-162.pdfhtml |title=SP 800-162, Guide toABAC (Attribute Based Access Control (ABAC), Definition and Considerations''jerichosystems.com'' |formataccess-date=PDF |publisher=NIST |accessdate=20152016-1207-0811}}</ref> Attribute values can be set-valued or atomic-valued. Set-valued attributes contain more than one atomic value. Examples are role and project. Atomic-valued attributes contain only one atomic value. Examples are [[Classified_information#Clearance|clearance]] and sensitivity. Attributes can be compared to static values or to one another, thus enabling relation-based access control.
 
Unlike [[Role-based access control|Role-Based Access Control (RBAC)]], which employs pre-defined roles that carry a specific set of [[Privilege (computing)|privileges]] associated with them and to which subjects are assigned, the key difference with ABAC is the concept of policies that express a complex Boolean rule set that can evaluate many different attributes.<ref>{{Cite web |date=2014 |url=http://nvlpubs.nist.gov/nistpubs/SpecialPublications/NIST.SP.800-162.pdf |title=SP 800-162, Guide to Attribute Based Access Control (ABAC) Definition and Considerations |format=PDF |publisher=NIST |accessdate=2015-12-08}}</ref> Attribute values can be set-valued or atomic-valued. Set-valued attributes contain more than one atomic value. Examples are ''role'' and ''project''. Atomic-valued attributes contain only one atomic value. Examples are [[Classified_information#Clearance|clearance]] and [[Information sensitivity|sensitivity]]. Attributes can be compared to static [[Value (computer science)|values]] or to one another, thus enabling relation-based access control.
Although the concept itself existed for many years, ABAC is considered<ref>{{Cite web |url=http://www.axiomatics.com/attribute-based-access-control.html |title=Attribute Based Access Control (ABAC) |accessdate=2016-05-07}}</ref> "next generation" authorization model because it provides dynamic, context-aware and risk-intelligent access control to resources allowing access control policies that include specific attributes from many different information systems to be defined to resolve an authorization and achieve an efficient regulatory compliance, allowing enterprises flexibility in their implementations based on their existing infrastructures.
 
Although the concept itself existed for many years, ABAC is considered<ref>{{Cite web |url=http://www.axiomatics.com/attribute-based-access-control.html |title=Attribute Based Access Control (ABAC), ''axiomatics.com'' |accessdate=2016-05-07-05}}</ref> "next generation" authorization model because it provides dynamic, context-aware and risk-intelligent access control to resources allowing access control policies that include specific attributes from many different information systems to be defined to resolve an authorization and achieve an efficient regulatory compliance, allowing enterprises flexibility in their implementations based on their existing infrastructures.
 
==Other models==