SlideShare una empresa de Scribd logo
1 de 44
Descargar para leer sin conexión
Uncovering XACML to solve real
world business use cases
Asela Pathberiya
Associate Technical Lead
About WSO2
๏ Global enterprise, founded in
2005 by acknowledged leaders in
XML, web services technologies,
standards and open source
๏ Provides only open source
platform-as-a-service for private,
public and hybrid cloud
deployments
๏ All WSO2 products are 100% open
source and released under the
Apache License Version 2.0.
๏ Is an Active Member of OASIS,
Cloud Security Alliance, OSGi
Alliance, AMQP Working Group,
OpenID Foundation and W3C.
๏ Driven by Innovation
๏ Launched first open source API
Management solution in 2012
๏ Launched App Factory in 2Q 2013
๏ Launched Enterprise Store and
first open source Mobile solution
in 4Q 2013
What WSO2 Deliver
What is in Today’s Webinar
o Introduction to Access Control & XACML
o Advantages of XACML
o Challenges with XACML
o Business use cases implemented with XACML
o Fine Grained access control for SOAP/REST APIs
o Building access control for Web applications
o Adding entitlement for enterprise data
o Building centralized entitlement system with
existing legacy authorization data
Introduction
Access Control Concepts
Policy Based Access Control
Attribute Based Access Control
Role Based Access Control
Dynamic Access Control
Fine Grained Access Control
Externalized Access Control
Standardized Access Control
Location Based Access Control
Real Time Access Control
Access Control Concepts
@#@^!(&%%@
We need to build an Externalized,
Standardized, Policy based,
Attribute based and Dynamic
Authorization System….. ASAP?
Access Control Concepts
Access Control Concepts
DONE
X A C M L
XACML
What is XACML
o XACML is standard for eXtensible Access
Control Markup Language
o Standard is ratified by OASIS standards
organization
The First meeting 21st March 2001
XACML 1.0 - OASIS Standard – 6 February 2003
XACML 2.0 – OASIS Standard – 1 February 2005
XACML 3.0 – OASIS Standard – 22 January 2013
XACML Core Specification
o Standardized Policy Language
o Standard way to write access control rules.
o Request/Response Protocol
o Standard way to query authorization requests &
authorization decisions must be responded back.
o Reference Architecture
o Standard components in an authorization system
and integration of each other.
o PDP - Policy Decision Point
o PEP - Policy Enforcement Point
o PIP - Policy Information Point
o PAP - Policy Administration Point
XACML Core Specification
XACML Associated Profiles
o Multiple Decision Profile
o Sending multiple authorization queries in single
request & Responding back with multiple
decisions.
o REST profile of XACML
o Standard way to communicate between PDP &
PEP.
o Request / Response Interface based on JSON
and HTTP (Draft)
o JSON based request & response messages.
Advantages of XACML
o Externalized
o Standardized
o Policy Based
o Attribute Based
o Fine Grained
o Dynamic
Challenges with XACML
o XACML is too complex
o XML language with many syntax
o Difficult to write & understand policies
o Integrating current authorization system with
XACML
o Converting existing authorization rules in to
XACML
o Standard extension point to integrate
Challenges with XACML
o Performance Bottleneck
o PDP - PEP communication
o Boolean decision results
o What are the resources that Bob can access?
o Policy Distribution
o Large scale deployments
Use Cases
XACML for SOAP/REST Services
o Access Control for SOAP Web Service
o Fine Grained into Operational & Message level
o Filtering response messages
XACML for SOAP/REST Services
o Access Control for REST APIs
o Fine Grained into Resources & HTTP Methods
o Scope validation - OAuth 2.0
XACML Business Use Case - 1
o Use Case
o X.509 Certificate based Authentication
o Authorization for Web Service operations based
on X.509 Certificate’s details such as CN, OU and
O.
XACML Business Use Case - 1
o Key Challenges
o Implementing PEP to extract data from X.509
Certificate
o Writing XACML policies
o Managing and Updating XACML policies efficiently
o Solutions
o X.509 authentication with WSO2ESB
o WSO2ESB Entitlement Mediator as PEP
o Policy Editors in WSO2 Identity Server
o Policy References
XACML Business Use Case - 1
XACML for Web Applications
o Presentation layer differ with the authenticated
User
XACML for Web Applications
o Multiple Decision Profile
o Hierarchical Resource Profile
XACML Business Use Case - 2
o Use Case
o Externalized Authorization system for Liferay Portal
o Authorized menu items, images and links are
shown for authenticated users
o ABAC using the existing OpenDJ user store
o Reusing Authorization system for Web Service &
API access control
XACML Business Use Case - 2
XACML Business Use Case - 2
o Key Challenges
o Implementing PEP for Liferay Portal
o Performance with XACML
o Writing & Managing XACML policies
o Solutions
o Liferay handler as PEP
o Thrift Protocol for improving PDP - PEP
communication
o Caching at PEP level
o Custom built PAP with Policy Editor
XACML Business Use Case - 2
XACML for Data Entitlement
o Filter data access in database level
XACML for Data Entitlement
o Filtering data returned from the database
XACML for Data Entitlement
o Modifying input parameters before data is
retrieved
XACML Business Use Case - 3
o Use Case
o Access Control for Web Application
o Authorized data must be filtered from large number
of database entries
o Key Challenges
o Performance of PEP-PDP communication
o Performance of filtering data from large database
entries
XACML Business Use Case - 3
o Solutions
o De-Centralized PDP
o OSGI Service level communication
o Modifying SQL queries based authorization decisions
XACML Business Use Case - 3
XACML for Centralized Entitlement
o Multiple Applications with their own legacy
Access Control Systems
XACML for Centralized Entitlement
o Centralized Externalized and Standardized
XACML Business Use Case - 4
o Use Case
o Centralized management for access control
o Get rid from legacy authorization systems
o Externalized and Standardized approaches
o Large scale deployment
o Key Challenges
o Integrating with legacy authorization data
o Policy generation with existing data
o Performance
o Policy distribution
o Auditing
XACML Business Use Case - 4
o Solutions
o Policy generation tools
o Policy information points for integrations
o Thrift Protocol for improving PDP - PEP
communication
o Policy distribution patterns
o Policy notifications
o Policy reverse search for auditing
XACML Business Use Case - 4
XACML Business Use Case - 4
XACML Business Use Case - 4
Q & A
Contact us !

Más contenido relacionado

La actualidad más candente

Introduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-ManagerIntroduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-Manager
walkerchang
 
Using Redis Streams To Build Event Driven Microservices And User Interface In...
Using Redis Streams To Build Event Driven Microservices And User Interface In...Using Redis Streams To Build Event Driven Microservices And User Interface In...
Using Redis Streams To Build Event Driven Microservices And User Interface In...
Redis Labs
 

La actualidad más candente (20)

Hashicorp Vault: Open Source Secrets Management at #OPEN18
Hashicorp Vault: Open Source Secrets Management at #OPEN18Hashicorp Vault: Open Source Secrets Management at #OPEN18
Hashicorp Vault: Open Source Secrets Management at #OPEN18
 
Architecture orientée service (SOA)
Architecture orientée service (SOA)Architecture orientée service (SOA)
Architecture orientée service (SOA)
 
QCM de question sur examen red hat 7.pptx
QCM de question sur examen red hat 7.pptxQCM de question sur examen red hat 7.pptx
QCM de question sur examen red hat 7.pptx
 
Appels de procédures distants (RPC)
Appels de procédures distants (RPC)Appels de procédures distants (RPC)
Appels de procédures distants (RPC)
 
Alphorm.com Formation le langage SQL
Alphorm.com  Formation le langage SQLAlphorm.com  Formation le langage SQL
Alphorm.com Formation le langage SQL
 
Cyber attaques APT avec le framework MITRE ATT&CK
Cyber attaques APT avec le framework MITRE ATT&CKCyber attaques APT avec le framework MITRE ATT&CK
Cyber attaques APT avec le framework MITRE ATT&CK
 
Tp n 4 linux
Tp n 4 linuxTp n 4 linux
Tp n 4 linux
 
Cryptosystéme de ElGamal
Cryptosystéme de ElGamal Cryptosystéme de ElGamal
Cryptosystéme de ElGamal
 
LDAP
LDAPLDAP
LDAP
 
Cours 2 les architectures reparties
Cours 2 les architectures repartiesCours 2 les architectures reparties
Cours 2 les architectures reparties
 
AWS IoT 入門實務
AWS IoT 入門實務AWS IoT 入門實務
AWS IoT 入門實務
 
Domain-Driven-Design 정복기 2탄
Domain-Driven-Design 정복기 2탄Domain-Driven-Design 정복기 2탄
Domain-Driven-Design 정복기 2탄
 
Symfony 2 : chapitre 1 - Présentation Générale
Symfony 2 : chapitre 1 - Présentation GénéraleSymfony 2 : chapitre 1 - Présentation Générale
Symfony 2 : chapitre 1 - Présentation Générale
 
Workshop Microservices - Construindo APIs RESTful com Spring Boot
Workshop Microservices - Construindo APIs RESTful com Spring BootWorkshop Microservices - Construindo APIs RESTful com Spring Boot
Workshop Microservices - Construindo APIs RESTful com Spring Boot
 
Edge to Instance - AWS Networking
Edge to Instance - AWS Networking Edge to Instance - AWS Networking
Edge to Instance - AWS Networking
 
Windows PowerShell
Windows PowerShellWindows PowerShell
Windows PowerShell
 
Introduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-ManagerIntroduction to Virtualization, Virsh and Virt-Manager
Introduction to Virtualization, Virsh and Virt-Manager
 
Using Redis Streams To Build Event Driven Microservices And User Interface In...
Using Redis Streams To Build Event Driven Microservices And User Interface In...Using Redis Streams To Build Event Driven Microservices And User Interface In...
Using Redis Streams To Build Event Driven Microservices And User Interface In...
 
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptxJoel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
Joel Schuweiler_AWS IAM Identity Center (Single Sign On).pptx
 
Cours frame relay
Cours frame relayCours frame relay
Cours frame relay
 

Destacado

Authorization - it's not just about who you are
Authorization - it's not just about who you areAuthorization - it's not just about who you are
Authorization - it's not just about who you are
David Brossard
 
Access control patterns
Access control patterns Access control patterns
Access control patterns
WSO2
 
Data Entitlement with WSO2 Enterprise Middleware Platform
Data Entitlement with WSO2 Enterprise Middleware PlatformData Entitlement with WSO2 Enterprise Middleware Platform
Data Entitlement with WSO2 Enterprise Middleware Platform
WSO2
 

Destacado (13)

OWASP Chicago 2016 - What is Attribute Based Access Control (ABAC)?
OWASP Chicago 2016 - What is Attribute Based Access Control (ABAC)?OWASP Chicago 2016 - What is Attribute Based Access Control (ABAC)?
OWASP Chicago 2016 - What is Attribute Based Access Control (ABAC)?
 
Authorization - it's not just about who you are
Authorization - it's not just about who you areAuthorization - it's not just about who you are
Authorization - it's not just about who you are
 
Web-of-Things and Services Security
Web-of-Things and Services SecurityWeb-of-Things and Services Security
Web-of-Things and Services Security
 
Access control patterns
Access control patterns Access control patterns
Access control patterns
 
Adding Identity Management and Access Control to your App
Adding Identity Management and Access Control to your AppAdding Identity Management and Access Control to your App
Adding Identity Management and Access Control to your App
 
Data Entitlement in an API-Centric Architecture
Data Entitlement in an API-Centric ArchitectureData Entitlement in an API-Centric Architecture
Data Entitlement in an API-Centric Architecture
 
OAuth 2.0 Integration Patterns with XACML
OAuth 2.0 Integration Patterns with XACMLOAuth 2.0 Integration Patterns with XACML
OAuth 2.0 Integration Patterns with XACML
 
Data Entitlement with WSO2 Enterprise Middleware Platform
Data Entitlement with WSO2 Enterprise Middleware PlatformData Entitlement with WSO2 Enterprise Middleware Platform
Data Entitlement with WSO2 Enterprise Middleware Platform
 
Beautiful Thoughts On Friendship
Beautiful Thoughts On FriendshipBeautiful Thoughts On Friendship
Beautiful Thoughts On Friendship
 
Attribute based access control
Attribute based access controlAttribute based access control
Attribute based access control
 
Abac and the evolution of access control
Abac and the evolution of access controlAbac and the evolution of access control
Abac and the evolution of access control
 
Attribute Based Access Control
Attribute Based Access ControlAttribute Based Access Control
Attribute Based Access Control
 
Spring Day | Identity Management with Spring Security | Dave Syer
Spring Day | Identity Management with Spring Security | Dave SyerSpring Day | Identity Management with Spring Security | Dave Syer
Spring Day | Identity Management with Spring Security | Dave Syer
 

Similar a Uncovering XACML to solve real world business use cases

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
The WSO2 Identity Server - An answer to your common XACML dilemmas
WSO2
 
The WSO2 Identity Server - An answer to your common XACML dilemmas
The WSO2 Identity Server - An answer to your common XACML dilemmasThe WSO2 Identity Server - An answer to your common XACML dilemmas
The WSO2 Identity Server - An answer to your common XACML dilemmas
sureshattanayake
 
SOA Pattern : Policy Centralization
SOA Pattern : Policy CentralizationSOA Pattern : Policy Centralization
SOA Pattern : Policy Centralization
WSO2
 
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Kenneth Peeples
 
Otm 2013 c13_e-13b-hagan-mark-otm-soa
Otm 2013 c13_e-13b-hagan-mark-otm-soaOtm 2013 c13_e-13b-hagan-mark-otm-soa
Otm 2013 c13_e-13b-hagan-mark-otm-soa
jucaab
 
Introducing The WSO2 Platform
Introducing The WSO2 Platform Introducing The WSO2 Platform
Introducing The WSO2 Platform
WSO2
 

Similar a Uncovering XACML to solve real world business use cases (20)

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
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 dilemmasThe 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
The WSO2 Identity Server - An answer to your common XACML dilemmasThe WSO2 Identity Server - An answer to your common XACML dilemmas
The WSO2 Identity Server - An answer to your common XACML dilemmas
 
SOA Pattern : Policy Centralization
SOA Pattern : Policy CentralizationSOA Pattern : Policy Centralization
SOA Pattern : Policy Centralization
 
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
Peeples authentication authorization_services_with_saml_xacml_with_jboss_eap6
 
Introduction to SoapUI day 1
Introduction to SoapUI day 1Introduction to SoapUI day 1
Introduction to SoapUI day 1
 
Soap UI - Getting started
Soap UI - Getting startedSoap UI - Getting started
Soap UI - Getting started
 
Streamline it management
Streamline it managementStreamline it management
Streamline it management
 
Oslc case study (poc results) v1.1
Oslc case study (poc results) v1.1Oslc case study (poc results) v1.1
Oslc case study (poc results) v1.1
 
Con8833 access at scale for hundreds of millions of users final
Con8833 access at scale for hundreds of millions of users   finalCon8833 access at scale for hundreds of millions of users   final
Con8833 access at scale for hundreds of millions of users final
 
oracle ebs free web service integration tools
oracle ebs free web service integration toolsoracle ebs free web service integration tools
oracle ebs free web service integration tools
 
Otm 2013 c13_e-13b-hagan-mark-otm-soa
Otm 2013 c13_e-13b-hagan-mark-otm-soaOtm 2013 c13_e-13b-hagan-mark-otm-soa
Otm 2013 c13_e-13b-hagan-mark-otm-soa
 
Introducing The WSO2 Platform
Introducing The WSO2 Platform Introducing The WSO2 Platform
Introducing The WSO2 Platform
 
Oracle soa bpel 11 g online training
Oracle soa bpel 11 g online trainingOracle soa bpel 11 g online training
Oracle soa bpel 11 g online training
 
Con9573 managing the oim platform with oracle enterprise manager
Con9573 managing the oim platform with oracle enterprise manager Con9573 managing the oim platform with oracle enterprise manager
Con9573 managing the oim platform with oracle enterprise manager
 
Policy enabling your services - using elastic dynamic authorization to contro...
Policy enabling your services - using elastic dynamic authorization to contro...Policy enabling your services - using elastic dynamic authorization to contro...
Policy enabling your services - using elastic dynamic authorization to contro...
 
Axiomatics webinar 13 june 2013 shared
Axiomatics webinar 13 june 2013   sharedAxiomatics webinar 13 june 2013   shared
Axiomatics webinar 13 june 2013 shared
 
Semantic Mediation Bus Presentation at VORTE 2012
Semantic Mediation Bus Presentation at VORTE 2012Semantic Mediation Bus Presentation at VORTE 2012
Semantic Mediation Bus Presentation at VORTE 2012
 
Leveraging Governance in the IBM WebSphere Service Registry and Repository fo...
Leveraging Governance in the IBM WebSphere Service Registry and Repository fo...Leveraging Governance in the IBM WebSphere Service Registry and Repository fo...
Leveraging Governance in the IBM WebSphere Service Registry and Repository fo...
 
Insights into Real World Data Management Challenges
Insights into Real World Data Management ChallengesInsights into Real World Data Management Challenges
Insights into Real World Data Management Challenges
 

Más de WSO2

Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected Products
WSO2
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital Businesses
WSO2
 

Más de WSO2 (20)

Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
How to Create a Service in Choreo
How to Create a Service in ChoreoHow to Create a Service in Choreo
How to Create a Service in Choreo
 
Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023Ballerina Tech Talk - May 2023
Ballerina Tech Talk - May 2023
 
Platform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on AzurePlatform Strategy to Deliver Digital Experiences on Azure
Platform Strategy to Deliver Digital Experiences on Azure
 
GartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdfGartnerITSymSessionSlides.pdf
GartnerITSymSessionSlides.pdf
 
[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes[Webinar] How to Create an API in Minutes
[Webinar] How to Create an API in Minutes
 
Modernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos IdentityModernizing the Student Journey with Ethos Identity
Modernizing the Student Journey with Ethos Identity
 
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
Choreo - Build unique digital experiences on WSO2's platform, secured by Etho...
 
CIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdfCIO Summit Berlin 2022.pptx.pdf
CIO Summit Berlin 2022.pptx.pdf
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing Choreo
 
Fueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected ProductsFueling the Digital Experience Economy with Connected Products
Fueling the Digital Experience Economy with Connected Products
 
A Reference Methodology for Agile Digital Businesses
 A Reference Methodology for Agile Digital Businesses A Reference Methodology for Agile Digital Businesses
A Reference Methodology for Agile Digital Businesses
 
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
Workflows in WSO2 API Manager - WSO2 API Manager Community Call (12/15/2021)
 
Lessons from the pandemic - From a single use case to true transformation
 Lessons from the pandemic - From a single use case to true transformation Lessons from the pandemic - From a single use case to true transformation
Lessons from the pandemic - From a single use case to true transformation
 
Adding Liveliness to Banking Experiences
Adding Liveliness to Banking ExperiencesAdding Liveliness to Banking Experiences
Adding Liveliness to Banking Experiences
 
Building a Future-ready Bank
Building a Future-ready BankBuilding a Future-ready Bank
Building a Future-ready Bank
 
WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021WSO2 API Manager Community Call - November 2021
WSO2 API Manager Community Call - November 2021
 
[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs[API World ] - Managing Asynchronous APIs
[API World ] - Managing Asynchronous APIs
 
[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment[API World 2021 ] - Understanding Cloud Native Deployment
[API World 2021 ] - Understanding Cloud Native Deployment
 
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
[API Word 2021] - Quantum Duality of “API as a Business and a Technology”
 

Uncovering XACML to solve real world business use cases

  • 1. Uncovering XACML to solve real world business use cases Asela Pathberiya Associate Technical Lead
  • 2. About WSO2 ๏ Global enterprise, founded in 2005 by acknowledged leaders in XML, web services technologies, standards and open source ๏ Provides only open source platform-as-a-service for private, public and hybrid cloud deployments ๏ All WSO2 products are 100% open source and released under the Apache License Version 2.0. ๏ Is an Active Member of OASIS, Cloud Security Alliance, OSGi Alliance, AMQP Working Group, OpenID Foundation and W3C. ๏ Driven by Innovation ๏ Launched first open source API Management solution in 2012 ๏ Launched App Factory in 2Q 2013 ๏ Launched Enterprise Store and first open source Mobile solution in 4Q 2013
  • 4. What is in Today’s Webinar o Introduction to Access Control & XACML o Advantages of XACML o Challenges with XACML o Business use cases implemented with XACML o Fine Grained access control for SOAP/REST APIs o Building access control for Web applications o Adding entitlement for enterprise data o Building centralized entitlement system with existing legacy authorization data
  • 6. Access Control Concepts Policy Based Access Control Attribute Based Access Control Role Based Access Control Dynamic Access Control Fine Grained Access Control Externalized Access Control Standardized Access Control Location Based Access Control Real Time Access Control
  • 7. Access Control Concepts @#@^!(&%%@ We need to build an Externalized, Standardized, Policy based, Attribute based and Dynamic Authorization System….. ASAP?
  • 10. XACML
  • 11. What is XACML o XACML is standard for eXtensible Access Control Markup Language o Standard is ratified by OASIS standards organization The First meeting 21st March 2001 XACML 1.0 - OASIS Standard – 6 February 2003 XACML 2.0 – OASIS Standard – 1 February 2005 XACML 3.0 – OASIS Standard – 22 January 2013
  • 12. XACML Core Specification o Standardized Policy Language o Standard way to write access control rules. o Request/Response Protocol o Standard way to query authorization requests & authorization decisions must be responded back. o Reference Architecture o Standard components in an authorization system and integration of each other. o PDP - Policy Decision Point o PEP - Policy Enforcement Point o PIP - Policy Information Point o PAP - Policy Administration Point
  • 14. XACML Associated Profiles o Multiple Decision Profile o Sending multiple authorization queries in single request & Responding back with multiple decisions. o REST profile of XACML o Standard way to communicate between PDP & PEP. o Request / Response Interface based on JSON and HTTP (Draft) o JSON based request & response messages.
  • 15. Advantages of XACML o Externalized o Standardized o Policy Based o Attribute Based o Fine Grained o Dynamic
  • 16. Challenges with XACML o XACML is too complex o XML language with many syntax o Difficult to write & understand policies o Integrating current authorization system with XACML o Converting existing authorization rules in to XACML o Standard extension point to integrate
  • 17. Challenges with XACML o Performance Bottleneck o PDP - PEP communication o Boolean decision results o What are the resources that Bob can access? o Policy Distribution o Large scale deployments
  • 19. XACML for SOAP/REST Services o Access Control for SOAP Web Service o Fine Grained into Operational & Message level o Filtering response messages
  • 20. XACML for SOAP/REST Services o Access Control for REST APIs o Fine Grained into Resources & HTTP Methods o Scope validation - OAuth 2.0
  • 21. XACML Business Use Case - 1 o Use Case o X.509 Certificate based Authentication o Authorization for Web Service operations based on X.509 Certificate’s details such as CN, OU and O.
  • 22. XACML Business Use Case - 1 o Key Challenges o Implementing PEP to extract data from X.509 Certificate o Writing XACML policies o Managing and Updating XACML policies efficiently o Solutions o X.509 authentication with WSO2ESB o WSO2ESB Entitlement Mediator as PEP o Policy Editors in WSO2 Identity Server o Policy References
  • 23. XACML Business Use Case - 1
  • 24. XACML for Web Applications o Presentation layer differ with the authenticated User
  • 25. XACML for Web Applications o Multiple Decision Profile o Hierarchical Resource Profile
  • 26. XACML Business Use Case - 2 o Use Case o Externalized Authorization system for Liferay Portal o Authorized menu items, images and links are shown for authenticated users o ABAC using the existing OpenDJ user store o Reusing Authorization system for Web Service & API access control
  • 27. XACML Business Use Case - 2
  • 28. XACML Business Use Case - 2 o Key Challenges o Implementing PEP for Liferay Portal o Performance with XACML o Writing & Managing XACML policies o Solutions o Liferay handler as PEP o Thrift Protocol for improving PDP - PEP communication o Caching at PEP level o Custom built PAP with Policy Editor
  • 29. XACML Business Use Case - 2
  • 30. XACML for Data Entitlement o Filter data access in database level
  • 31. XACML for Data Entitlement o Filtering data returned from the database
  • 32. XACML for Data Entitlement o Modifying input parameters before data is retrieved
  • 33. XACML Business Use Case - 3 o Use Case o Access Control for Web Application o Authorized data must be filtered from large number of database entries o Key Challenges o Performance of PEP-PDP communication o Performance of filtering data from large database entries
  • 34. XACML Business Use Case - 3 o Solutions o De-Centralized PDP o OSGI Service level communication o Modifying SQL queries based authorization decisions
  • 35. XACML Business Use Case - 3
  • 36. XACML for Centralized Entitlement o Multiple Applications with their own legacy Access Control Systems
  • 37. XACML for Centralized Entitlement o Centralized Externalized and Standardized
  • 38. XACML Business Use Case - 4 o Use Case o Centralized management for access control o Get rid from legacy authorization systems o Externalized and Standardized approaches o Large scale deployment o Key Challenges o Integrating with legacy authorization data o Policy generation with existing data o Performance o Policy distribution o Auditing
  • 39. XACML Business Use Case - 4 o Solutions o Policy generation tools o Policy information points for integrations o Thrift Protocol for improving PDP - PEP communication o Policy distribution patterns o Policy notifications o Policy reverse search for auditing
  • 40. XACML Business Use Case - 4
  • 41. XACML Business Use Case - 4
  • 42. XACML Business Use Case - 4
  • 43. Q & A