SlideShare a Scribd company logo
Access	
  Control	
  Pa.erns	
  &	
  Prac0ces	
  
with	
  	
  
WSO2	
  Middleware	
  
	
  
Prabath	
  Siriwardena	
  
	
  
	
  
About	
  Me	
  
•  Director	
  of	
  Security	
  Architecture	
  at	
  WSO2	
  
•  Leads	
  WSO2	
  Iden8ty	
  Server	
  –	
  an	
  open	
  source	
  iden8ty	
  and	
  
en8tlement	
  management	
  product.	
  
•  Apache	
  Axis2/Rampart	
  commiCer	
  /	
  PMC	
  
•  A	
  member	
  of	
  OASIS	
  Iden8ty	
  Metasystem	
  Interoperability	
  
(IMI)	
  TC,	
  OASIS	
  eXtensible	
  Access	
  Control	
  Markup	
  Language	
  
(XACML)	
  TC	
  and	
  OASIS	
  Security	
  Services	
  (SAML)	
  TC.	
  
•  TwiCer	
  :	
  @prabath	
  
•  Email	
  :	
  prabath@apache.org	
  
•  Blog	
  :	
  hCp://blog.facilelogin.com	
  
•  LinkedIn	
  :	
  hCp://www.linkedin.com/in/prabathsiriwardena	
  
	
  
 

	
  

	
  Discretionary Access Control (DAC)
vs.
Mandatory Access Control (MAC)
 

	
  

With the Discretionary Access Control,
the user can be the owner of the data
and at his discretion can transfer the
rights to another user.
 

	
  

With Mandatory Access Control, only
designated users are allowed to grant
rights and, users cannot transfer them.
 

	
  

All WSO2 Carbon based products are
based on Mandatory Access Control.
 

	
  

Group is a collection of Users - while a
Role is a collection of permissions.
 

	
  

Authorization Table
vs.
Access Control Lists
vs.
Capabilities
 

	
  

Authorization Table is a three column
table with subject, action and resource.
With Access Control Lists, each resource is
associated with a list, indicating, for each
	
   subject, the actions that the subject can exercise
on the resource.

	
  
With Capabilities, each subject has an
associated list, called capability list, indicating,
	
   for each resource, the accesses that the user is
allowed to exercise on the resource.

	
  
 

	
  

Access Control List is resource driven
while capabilities are subject driven.
 

	
  

With policy based access control we
can have authorization policies with a
fine granularity.
 

	
  

Capabilities and Access Control Lists
can be dynamically derived from
policies.
 

	
  

XACML is the de facto standard for
policy based access control.
 

	
  

XACML provides a reference
architecture, a request response
protocol and a policy language.
XACML	
  Reference	
  Architecture	
  

Policy	
  Administra0on	
  
Point	
  (PAP)	
  

Policy	
  Decision	
  Point	
  
(PDP)	
  

Policy	
  Store	
  

Policy	
  Enforcement	
  Point	
  
(PEP)	
  

Policy	
  Informa0on	
  Point	
  
(PIP)	
  
WSO2	
  Iden0ty	
  Server	
  
(XACML	
  PDP)	
  

XACML	
  	
  
Request	
  

XACML	
  with	
  Capabili0es	
  (WS-­‐Trust)	
  	
  
Hierarchical	
  Resource	
  Profile	
  
	
  

XACML	
  Response	
  

WSO2	
  Iden0ty	
  Server	
  
(STS)	
  

WSO2	
  Applica0on	
  Server	
  
(SOAP	
  Service)	
  

SAML	
  token	
  with	
  Authen0ca0on	
  	
  
and	
  	
  
Authoriza0on	
  Asser0ons	
  (Capabili0es)	
  

SAML	
  token	
  request	
  

Client	
  Applica0on	
  

SAML	
  token	
  with	
  
Authen0ca0on	
  	
  
and	
  	
  
Authoriza0on	
  Asser0on	
  
+	
  
Service	
  Request	
  
WSO2	
  Iden0ty	
  Server	
  
(XACML	
  PDP)	
  

XACML	
  	
  
Request	
  

XACML	
  with	
  Capabili0es	
  (WS-­‐Trust)	
  	
  
Hierarchical	
  Resource	
  Profile	
  
	
  

XACML	
  Response	
  

WSO2	
  Iden0ty	
  Server	
  
(SAML2	
  IdP)	
  

WSO2	
  Applica0on	
  Server	
  
(Web	
  Applica0on)	
  
SAML	
  token	
  with	
  Authen0ca0on	
  	
  
and	
  	
  
Authoriza0on	
  Asser0on	
  (Capabili0es)	
  

Browser	
  Redirect	
  with	
  SAML	
  Request	
  
Unauthen0cated	
  Request	
  
Role	
  Based	
  Access	
  Control	
  

WSO2	
  Applica0on	
  Server	
  
(SOAP	
  Service)	
  

Client	
  Applica0on	
  
Service	
  Request	
  +	
  Creden0als	
  

WSO2	
  ESB	
  
(Policy	
  Enforcement	
  
Point)	
  
RBAC	
  
WSO2	
  ESB	
  as	
  the	
  XACML	
  PEP	
  (SOAP	
  and	
  REST)	
  

WSO2	
  Iden0ty	
  Server	
  
(XACML	
  PDP)	
  

XACML	
  Response	
  

WSO2	
  Applica0on	
  Server	
  
(SOAP	
  Service)	
  

XACML	
  Request	
  

WSO2	
  ESB	
  
(Policy	
  Enforcement	
  
Point)	
  

Client	
  Applica0on	
  
Service	
  Request	
  +	
  Creden0als	
  
XACML	
  PEP	
  as	
  a	
  Servlet	
  Filter	
  

WSO2	
  Iden0ty	
  Server	
  
(XACML	
  PDP)	
  

XACML	
  Response	
  

XACML	
  Request	
  

XACML	
  
	
  Servlet	
  Filter	
  

Client	
  Applica0on	
  

WSO2	
  Applica0on	
  Server	
  
Service	
  Request	
  +	
  Creden0als	
  
OAuth	
  +	
  XACML	
  
WSO2	
  Iden0ty	
  Server	
  
(OAuth	
  
Authoriza0on	
  Server)	
  

XACML	
  	
  
Request	
  

Validate()	
  

XACML	
  Response	
  

WSO2	
  Iden0ty	
  Server	
  
(XACML	
  PDP)	
  

API	
  Gateway	
  

Access	
  
Token	
  

Client	
  Applica0on	
  
Authoriza0on	
  with	
  External	
  IdPs	
  (Role	
  Mapping)	
  
WSO2	
  Iden0ty	
  Server	
  

IdP	
  
Groups	
  

External	
  SAML2	
  IdP	
  
(Salesforce)	
  
SAML	
  token	
  with	
  Authen0ca0on	
  	
  
and	
  A.ribute	
  Asser0ons	
  with	
  IdP	
  groups	
  

Web	
  App	
  	
  
roles	
  

WSO2	
  Applica0on	
  Server	
  
(Web	
  Applica0on)	
  

Browser	
  Redirect	
  with	
  SAML	
  Request	
  
Unauthen0cated	
  Request	
  
 
	
  
	
  
Liferay	
  Portal	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  
	
  

XACML	
  Mul0ple	
  Decisions	
  and	
  	
  
Applica0on	
  Specific	
  Roles	
  

XACML	
  Request	
  

WSO2	
  Iden0ty	
  Server	
  
(XAML	
  PDP)	
  
XACML	
  Response	
  

Login	
  
lean	
  .	
  enterprise	
  .	
  middleware	
  

More Related Content

PDF
SHACL Overview
PPTX
RDF Data Model
PPTX
OpenID for Verifiable Credentials
PDF
Html 5 -_aula_1
PPTX
Integrity Constraints
PPTX
Xml ppt
PDF
Introduction to RDF & SPARQL
PPTX
RDF data model
SHACL Overview
RDF Data Model
OpenID for Verifiable Credentials
Html 5 -_aula_1
Integrity Constraints
Xml ppt
Introduction to RDF & SPARQL
RDF data model

What's hot (20)

PPTX
XML Introduction
PPTX
PPT
Oracle archi ppt
PPTX
Javascript validating form
PDF
Programação Web - CSS
PDF
Data Base Management System.pdf
PPTX
RDF validation tutorial
PPTX
Xml presentation
PPTX
The OAuth 2.0 Authorization Framework
PPTX
Sql Basics And Advanced
PPT
PPT
Database security
 
PPT
SQL Tutorial - Basic Commands
PDF
Introduction of EC-CUBE 4.0
PDF
Matching Identity Management Solutions to Self-Sovereign Identity Principles
PPTX
Security of the database
PPTX
Introduction to Oracle Database
PPTX
Introduction to database & sql
PDF
Decentralized Identifiers (DIDs): The Fundamental Building Block of Self-Sove...
PPT
XML Introduction
Oracle archi ppt
Javascript validating form
Programação Web - CSS
Data Base Management System.pdf
RDF validation tutorial
Xml presentation
The OAuth 2.0 Authorization Framework
Sql Basics And Advanced
Database security
 
SQL Tutorial - Basic Commands
Introduction of EC-CUBE 4.0
Matching Identity Management Solutions to Self-Sovereign Identity Principles
Security of the database
Introduction to Oracle Database
Introduction to database & sql
Decentralized Identifiers (DIDs): The Fundamental Building Block of Self-Sove...
Ad

Viewers also liked (12)

PDF
WSO2Con EU 2016: Rethinking Message Brokering with WSO2 Message Broker
PPTX
Introducing the WSO2 Platform
PDF
Introduction to the WSO2 Carbon Platform
PDF
The Role of Governance in Connecting Businesses
PDF
The WSO2 Advantage for a Connected Business
PDF
Introduction to the Connected Business
PDF
Data Entitlement with WSO2 Enterprise Middleware Platform
PDF
Consumer to Data: Next-Generation Middleware and Cloud Platform for your Ente...
PDF
WSO2 Year End Tech Update 2012
PDF
Understanding the WSO2 Platform and Technology
PDF
WSO2 Year End Tech Update Webinar
PPTX
Understanding the WSO2 Platform
WSO2Con EU 2016: Rethinking Message Brokering with WSO2 Message Broker
Introducing the WSO2 Platform
Introduction to the WSO2 Carbon Platform
The Role of Governance in Connecting Businesses
The WSO2 Advantage for a Connected Business
Introduction to the Connected Business
Data Entitlement with WSO2 Enterprise Middleware Platform
Consumer to Data: Next-Generation Middleware and Cloud Platform for your Ente...
WSO2 Year End Tech Update 2012
Understanding the WSO2 Platform and Technology
WSO2 Year End Tech Update Webinar
Understanding the WSO2 Platform
Ad

Similar to Access control patterns (20)

PDF
Uncovering XACML to solve real world business use cases
PPTX
WSO2Con USA 2017: Building a Secure Enterprise
PDF
Addressing Security Concerns with WSO2 Governance Registry Policy Store
PDF
The WSO2 Identity Server - An answer to your common XACML dilemmas
PDF
The WSO2 Identity Server - An answer to your common XACML dilemmas
PDF
The WSO2 Identity Server - An answer to your common XACML dilemmas
PDF
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
PDF
WSO2 Identity Server - Product Overview
PDF
End-to-End Identity Management
PDF
SOA Pattern : Policy Centralization
PPTX
SANS Institute Product Review: Oracle Entitlements Server
PDF
Identity and Entitlement Management Concepts
PPTX
Authorization - it's not just about who you are
PDF
Axiomatics webinar 13 june 2013 shared
PPT
Verification and change impact analysis of access-control policies
PDF
Dev Dives: Master advanced authentication and performance in Productivity Act...
PPTX
WSO2Con USA 2014 - Identity Server Tutorial
PPTX
Authorization Pattern.pptx power point s
PPTX
XACML - XML Amsterdam2011
PDF
#3 Wso2 masterclassitalia - wso2 Identity Server: must-have per gestire le id...
Uncovering XACML to solve real world business use cases
WSO2Con USA 2017: Building a Secure Enterprise
Addressing Security Concerns with WSO2 Governance Registry Policy Store
The WSO2 Identity Server - An answer to your common XACML dilemmas
The WSO2 Identity Server - An answer to your common XACML dilemmas
The WSO2 Identity Server - An answer to your common XACML dilemmas
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
WSO2 Identity Server - Product Overview
End-to-End Identity Management
SOA Pattern : Policy Centralization
SANS Institute Product Review: Oracle Entitlements Server
Identity and Entitlement Management Concepts
Authorization - it's not just about who you are
Axiomatics webinar 13 june 2013 shared
Verification and change impact analysis of access-control policies
Dev Dives: Master advanced authentication and performance in Productivity Act...
WSO2Con USA 2014 - Identity Server Tutorial
Authorization Pattern.pptx power point s
XACML - XML Amsterdam2011
#3 Wso2 masterclassitalia - wso2 Identity Server: must-have per gestire le id...

More from WSO2 (20)

PDF
Demystifying CMS-0057-F - Compliance Made Seamless with WSO2
PDF
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
PDF
Modern Platform Engineering with Choreo - The AI-Native Internal Developer Pl...
PDF
Application Modernization with Choreo - The AI-Native Internal Developer Plat...
PDF
Build Smarter, Deliver Faster with Choreo - An AI Native Internal Developer P...
PDF
Platformless Modernization with Choreo.pdf
PDF
Application Modernization with Choreo for the BFSI Sector
PDF
Choreo - The AI-Native Internal Developer Platform as a Service: Overview
PDF
[Roundtable] Choreo - The AI-Native Internal Developer Platform as a Service
PPTX
WSO2Con 2025 - Building AI Applications in the Enterprise (Part 1)
PPTX
WSO2Con 2025 - Building Secure Business Customer and Partner Experience (B2B)...
PPTX
WSO2Con 2025 - Building Secure Customer Experience Apps
PPTX
WSO2Con 2025 - AI-Driven API Design, Development, and Consumption with Enhanc...
PPTX
WSO2Con 2025 - AI-Driven API Design, Development, and Consumption with Enhanc...
PPTX
WSO2Con 2025 - Unified Management of Ingress and Egress Across Multiple API G...
PPTX
WSO2Con 2025 - How an Internal Developer Platform Lets Developers Focus on Code
PPTX
WSO2Con 2025 - Architecting Cloud-Native Applications
PDF
Mastering Intelligent Digital Experiences with Platformless Modernization
PDF
Accelerate Enterprise Software Engineering with Platformless
PDF
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
Demystifying CMS-0057-F - Compliance Made Seamless with WSO2
Quantum Threats Are Closer Than You Think – Act Now to Stay Secure
Modern Platform Engineering with Choreo - The AI-Native Internal Developer Pl...
Application Modernization with Choreo - The AI-Native Internal Developer Plat...
Build Smarter, Deliver Faster with Choreo - An AI Native Internal Developer P...
Platformless Modernization with Choreo.pdf
Application Modernization with Choreo for the BFSI Sector
Choreo - The AI-Native Internal Developer Platform as a Service: Overview
[Roundtable] Choreo - The AI-Native Internal Developer Platform as a Service
WSO2Con 2025 - Building AI Applications in the Enterprise (Part 1)
WSO2Con 2025 - Building Secure Business Customer and Partner Experience (B2B)...
WSO2Con 2025 - Building Secure Customer Experience Apps
WSO2Con 2025 - AI-Driven API Design, Development, and Consumption with Enhanc...
WSO2Con 2025 - AI-Driven API Design, Development, and Consumption with Enhanc...
WSO2Con 2025 - Unified Management of Ingress and Egress Across Multiple API G...
WSO2Con 2025 - How an Internal Developer Platform Lets Developers Focus on Code
WSO2Con 2025 - Architecting Cloud-Native Applications
Mastering Intelligent Digital Experiences with Platformless Modernization
Accelerate Enterprise Software Engineering with Platformless
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation

Recently uploaded (20)

PPT
340036916-American-Literature-Literary-Period-Overview.ppt
PPTX
Probability Distribution, binomial distribution, poisson distribution
PDF
Digital Marketing & E-commerce Certificate Glossary.pdf.................
PDF
COST SHEET- Tender and Quotation unit 2.pdf
PDF
Katrina Stoneking: Shaking Up the Alcohol Beverage Industry
PPTX
2025 Product Deck V1.0.pptxCATALOGTCLCIA
PDF
DOC-20250806-WA0002._20250806_112011_0000.pdf
PPTX
Lecture (1)-Introduction.pptx business communication
PDF
Roadmap Map-digital Banking feature MB,IB,AB
PDF
Tata consultancy services case study shri Sharda college, basrur
PDF
pdfcoffee.com-opt-b1plus-sb-answers.pdfvi
PPTX
Amazon (Business Studies) management studies
PPTX
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
PPTX
job Avenue by vinith.pptxvnbvnvnvbnvbnbmnbmbh
PPTX
svnfcksanfskjcsnvvjknsnvsdscnsncxasxa saccacxsax
PDF
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
PDF
Nidhal Samdaie CV - International Business Consultant
PDF
Unit 1 Cost Accounting - Cost sheet
PPTX
HR Introduction Slide (1).pptx on hr intro
PDF
MSPs in 10 Words - Created by US MSP Network
340036916-American-Literature-Literary-Period-Overview.ppt
Probability Distribution, binomial distribution, poisson distribution
Digital Marketing & E-commerce Certificate Glossary.pdf.................
COST SHEET- Tender and Quotation unit 2.pdf
Katrina Stoneking: Shaking Up the Alcohol Beverage Industry
2025 Product Deck V1.0.pptxCATALOGTCLCIA
DOC-20250806-WA0002._20250806_112011_0000.pdf
Lecture (1)-Introduction.pptx business communication
Roadmap Map-digital Banking feature MB,IB,AB
Tata consultancy services case study shri Sharda college, basrur
pdfcoffee.com-opt-b1plus-sb-answers.pdfvi
Amazon (Business Studies) management studies
Dragon_Fruit_Cultivation_in Nepal ppt.pptx
job Avenue by vinith.pptxvnbvnvnvbnvbnbmnbmbh
svnfcksanfskjcsnvvjknsnvsdscnsncxasxa saccacxsax
BsN 7th Sem Course GridNNNNNNNN CCN.pdf
Nidhal Samdaie CV - International Business Consultant
Unit 1 Cost Accounting - Cost sheet
HR Introduction Slide (1).pptx on hr intro
MSPs in 10 Words - Created by US MSP Network

Access control patterns

  • 1. Access  Control  Pa.erns  &  Prac0ces   with     WSO2  Middleware     Prabath  Siriwardena      
  • 2. About  Me   •  Director  of  Security  Architecture  at  WSO2   •  Leads  WSO2  Iden8ty  Server  –  an  open  source  iden8ty  and   en8tlement  management  product.   •  Apache  Axis2/Rampart  commiCer  /  PMC   •  A  member  of  OASIS  Iden8ty  Metasystem  Interoperability   (IMI)  TC,  OASIS  eXtensible  Access  Control  Markup  Language   (XACML)  TC  and  OASIS  Security  Services  (SAML)  TC.   •  TwiCer  :  @prabath   •  Email  :  prabath@apache.org   •  Blog  :  hCp://blog.facilelogin.com   •  LinkedIn  :  hCp://www.linkedin.com/in/prabathsiriwardena    
  • 3.      Discretionary Access Control (DAC) vs. Mandatory Access Control (MAC)
  • 4.     With the Discretionary Access Control, the user can be the owner of the data and at his discretion can transfer the rights to another user.
  • 5.     With Mandatory Access Control, only designated users are allowed to grant rights and, users cannot transfer them.
  • 6.     All WSO2 Carbon based products are based on Mandatory Access Control.
  • 7.     Group is a collection of Users - while a Role is a collection of permissions.
  • 8.     Authorization Table vs. Access Control Lists vs. Capabilities
  • 9.     Authorization Table is a three column table with subject, action and resource.
  • 10. With Access Control Lists, each resource is associated with a list, indicating, for each   subject, the actions that the subject can exercise on the resource.  
  • 11. With Capabilities, each subject has an associated list, called capability list, indicating,   for each resource, the accesses that the user is allowed to exercise on the resource.  
  • 12.     Access Control List is resource driven while capabilities are subject driven.
  • 13.     With policy based access control we can have authorization policies with a fine granularity.
  • 14.     Capabilities and Access Control Lists can be dynamically derived from policies.
  • 15.     XACML is the de facto standard for policy based access control.
  • 16.     XACML provides a reference architecture, a request response protocol and a policy language.
  • 17. XACML  Reference  Architecture   Policy  Administra0on   Point  (PAP)   Policy  Decision  Point   (PDP)   Policy  Store   Policy  Enforcement  Point   (PEP)   Policy  Informa0on  Point   (PIP)  
  • 18. WSO2  Iden0ty  Server   (XACML  PDP)   XACML     Request   XACML  with  Capabili0es  (WS-­‐Trust)     Hierarchical  Resource  Profile     XACML  Response   WSO2  Iden0ty  Server   (STS)   WSO2  Applica0on  Server   (SOAP  Service)   SAML  token  with  Authen0ca0on     and     Authoriza0on  Asser0ons  (Capabili0es)   SAML  token  request   Client  Applica0on   SAML  token  with   Authen0ca0on     and     Authoriza0on  Asser0on   +   Service  Request  
  • 19. WSO2  Iden0ty  Server   (XACML  PDP)   XACML     Request   XACML  with  Capabili0es  (WS-­‐Trust)     Hierarchical  Resource  Profile     XACML  Response   WSO2  Iden0ty  Server   (SAML2  IdP)   WSO2  Applica0on  Server   (Web  Applica0on)   SAML  token  with  Authen0ca0on     and     Authoriza0on  Asser0on  (Capabili0es)   Browser  Redirect  with  SAML  Request   Unauthen0cated  Request  
  • 20. Role  Based  Access  Control   WSO2  Applica0on  Server   (SOAP  Service)   Client  Applica0on   Service  Request  +  Creden0als   WSO2  ESB   (Policy  Enforcement   Point)   RBAC  
  • 21. WSO2  ESB  as  the  XACML  PEP  (SOAP  and  REST)   WSO2  Iden0ty  Server   (XACML  PDP)   XACML  Response   WSO2  Applica0on  Server   (SOAP  Service)   XACML  Request   WSO2  ESB   (Policy  Enforcement   Point)   Client  Applica0on   Service  Request  +  Creden0als  
  • 22. XACML  PEP  as  a  Servlet  Filter   WSO2  Iden0ty  Server   (XACML  PDP)   XACML  Response   XACML  Request   XACML    Servlet  Filter   Client  Applica0on   WSO2  Applica0on  Server   Service  Request  +  Creden0als  
  • 23. OAuth  +  XACML   WSO2  Iden0ty  Server   (OAuth   Authoriza0on  Server)   XACML     Request   Validate()   XACML  Response   WSO2  Iden0ty  Server   (XACML  PDP)   API  Gateway   Access   Token   Client  Applica0on  
  • 24. Authoriza0on  with  External  IdPs  (Role  Mapping)   WSO2  Iden0ty  Server   IdP   Groups   External  SAML2  IdP   (Salesforce)   SAML  token  with  Authen0ca0on     and  A.ribute  Asser0ons  with  IdP  groups   Web  App     roles   WSO2  Applica0on  Server   (Web  Applica0on)   Browser  Redirect  with  SAML  Request   Unauthen0cated  Request  
  • 25.       Liferay  Portal                             XACML  Mul0ple  Decisions  and     Applica0on  Specific  Roles   XACML  Request   WSO2  Iden0ty  Server   (XAML  PDP)   XACML  Response   Login  
  • 26. lean  .  enterprise  .  middleware