SlideShare uma empresa Scribd logo
1 de 38
Baixar para ler offline
Identity Management and Access Control
Security and API Management Chapter
Álvaro Alonso – alvaro.alonso@upm.es
FIWARE Security Team
Universidad Politécnica de Madrid
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
FIWARE Ecosystem
▪ A framework of open source platform components which can be
assembled together and with other third-party components to accelerate
the development of Smart Solutions.
Access Control
IAM Generic Enablers
Identity & Access Control Management
▪ Keyrock – Identity Management
▪ Wilma – PEP Proxy
▪ AuthZForce – Authorization PDP
https://keyrock-fiware.github.io
Keyrock
Main features
Web Interface and Rest API for managing Identity
▪ Users, devices and groups management
▪ OAuth 2.0 and OpenID Connect - Single Sign On
▪ Application - scoped roles and permissions management
▪ Support for local and remote PAP/PDP
▪ JSON Web Tokens (JWT) and Permanent Tokens support
▪ Two factor authentication
▪ MySQL / PostgreSQL and external DB driver
▪ European eID authentication compatibility (CEF eIDAS)
PEP Proxy for securing service backends
▪ Basic and complex AC policies support
▪ OAuth 2.0 Access Tokens support
▪ JSON Web Tokens (JWT) support
▪ Custom PDP configuration
▪ Integrated with API Management tools
• APInf & API Umbrella
• KONG
Wilma
Main features
PAP and PDP Server for managing complex AC policies
▪ XACML-3.0 standard-compliant
▪ Cloud-ready RESTful ABAC framework with XML optimization
▪ Multi-tenant REST API for PDP and PAP
▪ Standards:
▪ OASIS: XACML 3.0 + Profiles (REST, RBAC, Multiple Decision)
▪ ISO: Fast Infoset
▪ Extensible to attribute providers (PIP), functions, etc.
AuthZForce
Main features
Identity and AC Management
OAuth 2.0 flow
IAM Infrastructure
IdM
Service Applica4on
Oauth 2.0 requests
access-token
User info request
Identity and AC Management
Accessing GEs and services
IAM Infrastructure
IdM PAP
Policies DB
PDP
Service Applica8on
Service Backend
PEP
OAuth2 flow
Request
+ token
Check auth
Identity and AC Management
Accessing GEs and services
▪ Level 1: Authentication
▪ Level 2: Basic Authorization
▪ Level 3: Advanced Authorization
Identity and AC Management
Accessing GEs and services
▪ Level 1: Authentication
• Check if a user has been authenticated
▪ Level 2: Basic Authorization
▪ Level 3: Advanced Authorization
Identity and AC Management
Level 1: Authentication
IAM Infrastructure
IdM
Service Application
Service Backend
PEP
OAuth2 flow
Request
+ token
Check
token
Identity and AC Management
Accessing GEs and services
▪ Level 1: Authentication
• Check if a user has been authenticated
▪ Level 2: Basic Authorization
• Checks if a user has permissions to access a resource
• HTTP verb + resource path
▪ Level 3: Advanced Authorization
Identity and AC Management
Level 2: Basic Authorization
IAM Infrastructure
Service Application
Service Backend
PEP
OAuth2 flow
Request
+ token
IdM
PAP
PDP
Check token
& authorization
Identity and AC Management
Accessing GEs and services
▪ Level 1: Authentication
• Check if a user has been authenticated
▪ Level 2: Basic Authorization
• Checks if a user has permissions to access a resource
• HTTP verb + resource path
▪ Level 3: Advanced Authorization
• Custom XACML policies
Identity and AC Management
Level 3: Advanced Authorization
IAM Infrastructure
IdP
Service Application
Service Backend
PEP
OAuth2 flow
Request
+ token
Check
token
PAP
Policies DB
PDP
Check auth
Identity and AC Management
JSON Web Tokens
▪ A JSON Web Token (JWT) is a JSON
object defined in RFC 7519 as a safe
way to represent a set of information
between two parties.
▪ The token is composed of a header, a
payload, and a signature.
IAM Infrastructure
Service Application
Service Backend
PEP
OAuth2 flow
(JWT)
Request
+ JWT
IdM
PAP
PDP
Identity and AC Management
JSON Web Tokens
Token
validation
IAM Infrastructure
Service Application
Service Backend
PEP
OAuth2 flow
(JWT)
Request
+ JWT
IdM
PAP
PDP
Check
authorization
Identity and AC Management
JSON Web Tokens
Token
validation
Keyrock
Identity attributes
▪ Definition of custom attributes in users’ profile
• List of attributes configurable in config file
• Users can define the values in the UI
▪ The attributes are included in the users’ profile returned when
validating a token
▪ Service providers can use them for personalizing the services
▪ Typical use case -> Accessibility
Research paper published at https://doi.org/10.3390/app9183813
Keyrock
Identity attributes
▪ Typical use case -> Accessibility
• Provide interfaces adapted to the users’ functional capabilities
Keyrock
External DB Authentication
▪ SQL/LDAP External Authentication Driver
▪ Documentation available
• https://fiware-
idm.readthedocs.io/en/latest/installation_and_administration_guide/confi
guration/index.html#external-authentication-ldap
OAuth2
Keyrock’s
Database
- Orgs
- Apps
- Roles
- …
LDAP
Server
Users directory
- username
- password
- email
Authentication
check
API Management
API Umbrella & PEP Proxy
Back-end
Request
+
API
Key
Web App
API Umbrella
Back-end Back-end Back-end
API Management
API Umbrella & PEP Proxy
Back
end
App
IAM
Infrastruture
Request
+
access-token
Web App
Oauth
Library
PEP Proxy API Umbrella
access-token
OK + user info (roles)
Oauth2 flows
access_token
Back
end
App
Back
end
App
Back
end
App
eID Integration
CEF eIDAS
▪ eIDAS (electronic IDentification, Authentication and trust
Services) is an EU regulation to enable secure and seamless
electronic interactions between businesses, citizens and public
authorities.
▪ Access to European services by national eID
eIDAS
country 1
eIDAS
country 2
eIDAS
country 3
Service
User
country 2
eID
eID Integration
FIWARE Identity Gateway
▪ Integration of FIWARE Security Framework with eIDAS
▪ Every application registered in Keyrock can be linked to a
eIDAS node
• By an OAuth 2.0 – SAML2 gateway
▪ Users can then authenticate using their national eID
• AC policies based on user eIDAS profile
▪ Transparent for applications providers
eID Integration
FIWARE Identity Gateway
IAM Infrastructure
IdP
Service Application
Oauth 2.0 requests
access-token
User info request
eIDAS
eIDAS
node 1
IdP 1
eIDAS
node 2
IdP 2
…
SAML flow
Authentication
Data Usage Control
▪ Security Framework and Data
Usage Control
• Ensures data sovereignty
• Regulates what is allowed to
happen with the data (future
usage).
▪ Integration with Big Data and
Processing GEs
Data Usage Control
Security GEs documentation
▪ Identity Management – Keyrock
• https://keyrock-fiware.github.io
• https://github.com/ging/fiware-idm
• https://catalogue.fiware.org/enablers/identity-management-keyrock
▪ PEP Proxy – Wilma
• https://github.com/ging/fiware-pep-proxy
• https://catalogue.fiware.org/enablers/pep-proxy-wilma
▪ Authorization PDP – AuthZForce
• https://github.com/authzforce/server
• https://catalogue.fiware.org/enablers/authorization-pdp-authzforce
Thank you!
http://fiware.org
Follow @FIWARE on Twitter

Mais conteúdo relacionado

Mais procurados

FIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE Training: IoT and Legacy
FIWARE Training: IoT and Legacy
FIWARE
 

Mais procurados (20)

Session 2 - NGSI-LD primer & Smart Data Models | Train the Trainers Program
Session 2 - NGSI-LD primer & Smart Data Models | Train the Trainers ProgramSession 2 - NGSI-LD primer & Smart Data Models | Train the Trainers Program
Session 2 - NGSI-LD primer & Smart Data Models | Train the Trainers Program
 
Session 5 - NGSI-LD Advanced Operations | Train the Trainers Program
Session 5 -  NGSI-LD Advanced Operations | Train the Trainers ProgramSession 5 -  NGSI-LD Advanced Operations | Train the Trainers Program
Session 5 - NGSI-LD Advanced Operations | Train the Trainers Program
 
Kong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in Production
Kong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in ProductionKong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in Production
Kong, Keyrock, Keycloak, i4Trust - Options to Secure FIWARE in Production
 
Pentesting jwt
Pentesting jwtPentesting jwt
Pentesting jwt
 
[OPD 2019] Attacking JWT tokens
[OPD 2019] Attacking JWT tokens[OPD 2019] Attacking JWT tokens
[OPD 2019] Attacking JWT tokens
 
FIWARE Wednesday Webinars - Introduction to NGSI-LD
FIWARE Wednesday Webinars - Introduction to NGSI-LDFIWARE Wednesday Webinars - Introduction to NGSI-LD
FIWARE Wednesday Webinars - Introduction to NGSI-LD
 
FIWARE Training: IoT and Legacy
FIWARE Training: IoT and LegacyFIWARE Training: IoT and Legacy
FIWARE Training: IoT and Legacy
 
OAuth 2.0 and OpenId Connect
OAuth 2.0 and OpenId ConnectOAuth 2.0 and OpenId Connect
OAuth 2.0 and OpenId Connect
 
FIWARE Training: NGSI-LD Advanced Operations
FIWARE Training: NGSI-LD Advanced OperationsFIWARE Training: NGSI-LD Advanced Operations
FIWARE Training: NGSI-LD Advanced Operations
 
Understanding JWT Exploitation
Understanding JWT ExploitationUnderstanding JWT Exploitation
Understanding JWT Exploitation
 
OAuth & OpenID Connect Deep Dive
OAuth & OpenID Connect Deep DiveOAuth & OpenID Connect Deep Dive
OAuth & OpenID Connect Deep Dive
 
SIngle Sign On with Keycloak
SIngle Sign On with KeycloakSIngle Sign On with Keycloak
SIngle Sign On with Keycloak
 
What is Swagger?
What is Swagger?What is Swagger?
What is Swagger?
 
State of the art authentication mit Java EE 8
State of the art authentication mit Java EE 8State of the art authentication mit Java EE 8
State of the art authentication mit Java EE 8
 
OAuth 2.0
OAuth 2.0OAuth 2.0
OAuth 2.0
 
Rest and the hypermedia constraint
Rest and the hypermedia constraintRest and the hypermedia constraint
Rest and the hypermedia constraint
 
Integrating Fiware Orion, Keyrock and Wilma
Integrating Fiware Orion, Keyrock and WilmaIntegrating Fiware Orion, Keyrock and Wilma
Integrating Fiware Orion, Keyrock and Wilma
 
OAuth 2
OAuth 2OAuth 2
OAuth 2
 
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Creating a Context-Aware solution, Complex Event Processing with FIWARE PerseoCreating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
Creating a Context-Aware solution, Complex Event Processing with FIWARE Perseo
 
Jwt Security
Jwt SecurityJwt Security
Jwt Security
 

Semelhante a FIWARE Identity Management and Access Control

Semelhante a FIWARE Identity Management and Access Control (20)

FIWARE Global Summit - Identity Management and Access Control
FIWARE Global Summit - Identity Management and Access ControlFIWARE Global Summit - Identity Management and Access Control
FIWARE Global Summit - Identity Management and Access Control
 
FIWARE Global Summit - Identity Management and Access Control
FIWARE Global Summit - Identity Management and Access ControlFIWARE Global Summit - Identity Management and Access Control
FIWARE Global Summit - Identity Management and Access Control
 
FIWARE Global Summit - Keyrock: Protecting Microservices
FIWARE Global Summit - Keyrock: Protecting MicroservicesFIWARE Global Summit - Keyrock: Protecting Microservices
FIWARE Global Summit - Keyrock: Protecting Microservices
 
FIWARE Global Summit - Adding Identity Management, Access Control and API Man...
FIWARE Global Summit - Adding Identity Management, Access Control and API Man...FIWARE Global Summit - Adding Identity Management, Access Control and API Man...
FIWARE Global Summit - Adding Identity Management, Access Control and API Man...
 
Securing FIWARE Architectures
Securing FIWARE ArchitecturesSecuring FIWARE Architectures
Securing FIWARE Architectures
 
FIWARE Identity Management and Access Control
FIWARE Identity Management and Access ControlFIWARE Identity Management and Access Control
FIWARE Identity Management and Access Control
 
Five Things You Gotta Know About Modern Identity
Five Things You Gotta Know About Modern IdentityFive Things You Gotta Know About Modern Identity
Five Things You Gotta Know About Modern Identity
 
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
 
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
 
FIWARE Tech Summit - Complete Framework for Identity, Access Control and API ...
FIWARE Tech Summit - Complete Framework for Identity, Access Control and API ...FIWARE Tech Summit - Complete Framework for Identity, Access Control and API ...
FIWARE Tech Summit - Complete Framework for Identity, Access Control and API ...
 
API Security in a Microservice Architecture
API Security in a Microservice ArchitectureAPI Security in a Microservice Architecture
API Security in a Microservice Architecture
 
Adding Identity Management and Access Control to your Application
Adding Identity Management and Access Control to your ApplicationAdding Identity Management and Access Control to your Application
Adding Identity Management and Access Control to your Application
 
An Authentication and Authorization Architecture for a Microservices World
An Authentication and Authorization Architecture for a Microservices WorldAn Authentication and Authorization Architecture for a Microservices World
An Authentication and Authorization Architecture for a Microservices World
 
Oauth2.0
Oauth2.0Oauth2.0
Oauth2.0
 
FIware Identity Manager
FIware Identity ManagerFIware Identity Manager
FIware Identity Manager
 
WSO2 Identity Server - Product Overview
WSO2 Identity Server - Product OverviewWSO2 Identity Server - Product Overview
WSO2 Identity Server - Product Overview
 
Understanding Identity in the World of Web APIs – Ronnie Mitra, API Architec...
Understanding Identity in the World of Web APIs – Ronnie Mitra,  API Architec...Understanding Identity in the World of Web APIs – Ronnie Mitra,  API Architec...
Understanding Identity in the World of Web APIs – Ronnie Mitra, API Architec...
 
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker IdentityFederation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
Federation Evolved: How Cloud, Mobile & APIs Change the Way We Broker Identity
 
Implementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with SpringImplementing Microservices Security Patterns & Protocols with Spring
Implementing Microservices Security Patterns & Protocols with Spring
 
apidays LIVE Hong Kong - Orchestrating APIs at Scale by Hieu Nguyen Nhu
apidays LIVE Hong Kong - Orchestrating APIs at Scale by Hieu Nguyen Nhuapidays LIVE Hong Kong - Orchestrating APIs at Scale by Hieu Nguyen Nhu
apidays LIVE Hong Kong - Orchestrating APIs at Scale by Hieu Nguyen Nhu
 

Mais de FIWARE

Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptxCameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
FIWARE
 
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptxBoris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
FIWARE
 
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
FIWARE
 
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdfAbdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
FIWARE
 
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdfFGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FIWARE
 

Mais de FIWARE (20)

Behm_Herne_NeMo_akt.pptx
Behm_Herne_NeMo_akt.pptxBehm_Herne_NeMo_akt.pptx
Behm_Herne_NeMo_akt.pptx
 
Katharina Hogrebe Herne Digital Days.pdf
 Katharina Hogrebe Herne Digital Days.pdf Katharina Hogrebe Herne Digital Days.pdf
Katharina Hogrebe Herne Digital Days.pdf
 
Christoph Mertens_IDSA_Introduction to Data Spaces.pptx
Christoph Mertens_IDSA_Introduction to Data Spaces.pptxChristoph Mertens_IDSA_Introduction to Data Spaces.pptx
Christoph Mertens_IDSA_Introduction to Data Spaces.pptx
 
Behm_Herne_NeMo.pptx
Behm_Herne_NeMo.pptxBehm_Herne_NeMo.pptx
Behm_Herne_NeMo.pptx
 
Evangelists + iHubs Promo Slides.pptx
Evangelists + iHubs Promo Slides.pptxEvangelists + iHubs Promo Slides.pptx
Evangelists + iHubs Promo Slides.pptx
 
Lukas Künzel Smart City Operating System.pptx
Lukas Künzel Smart City Operating System.pptxLukas Künzel Smart City Operating System.pptx
Lukas Künzel Smart City Operating System.pptx
 
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptx
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptxPierre Golz Der Transformationsprozess im Konzern Stadt.pptx
Pierre Golz Der Transformationsprozess im Konzern Stadt.pptx
 
Dennis Wendland_The i4Trust Collaboration Programme.pptx
Dennis Wendland_The i4Trust Collaboration Programme.pptxDennis Wendland_The i4Trust Collaboration Programme.pptx
Dennis Wendland_The i4Trust Collaboration Programme.pptx
 
Ulrich Ahle_FIWARE.pptx
Ulrich Ahle_FIWARE.pptxUlrich Ahle_FIWARE.pptx
Ulrich Ahle_FIWARE.pptx
 
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptx
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptxAleksandar Vrglevski _FIWARE DACH_OSIH.pptx
Aleksandar Vrglevski _FIWARE DACH_OSIH.pptx
 
Water Quality - Lukas Kuenzel.pdf
Water Quality - Lukas Kuenzel.pdfWater Quality - Lukas Kuenzel.pdf
Water Quality - Lukas Kuenzel.pdf
 
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptxCameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
Cameron Brooks_FGS23_FIWARE Summit_Keynote_Cameron.pptx
 
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptxFiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
FiWareSummit.msGIS-Data-to-Value.2023.06.12.pptx
 
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptxBoris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
Boris Otto_FGS2023_Opening- EU Innovations from Data_PUB_V1_BOt.pptx
 
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
Bjoern de Vidts_FGS23_Opening_athumi - bjord de vidts - personal data spaces....
 
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdfAbdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
Abdulrahman Ibrahim_FGS23 Opening - Abdulrahman Ibrahim.pdf
 
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdfFGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
FGS2023_Opening_Red Hat Keynote Andrea Battaglia.pdf
 
HTAG_Skalierung_Plattform_lokal_final_versand.pptx
HTAG_Skalierung_Plattform_lokal_final_versand.pptxHTAG_Skalierung_Plattform_lokal_final_versand.pptx
HTAG_Skalierung_Plattform_lokal_final_versand.pptx
 
WE_LoRaWAN _ IoT.pptx
WE_LoRaWAN  _ IoT.pptxWE_LoRaWAN  _ IoT.pptx
WE_LoRaWAN _ IoT.pptx
 
EU Opp_Clara Pezuela - German chapter.pptx
EU Opp_Clara Pezuela - German chapter.pptxEU Opp_Clara Pezuela - German chapter.pptx
EU Opp_Clara Pezuela - German chapter.pptx
 

Último

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Último (20)

Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

FIWARE Identity Management and Access Control

  • 1. Identity Management and Access Control Security and API Management Chapter Álvaro Alonso – alvaro.alonso@upm.es FIWARE Security Team Universidad Politécnica de Madrid
  • 2. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 3. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 4. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 5. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 6. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 7. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 8. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions.
  • 9. FIWARE Ecosystem ▪ A framework of open source platform components which can be assembled together and with other third-party components to accelerate the development of Smart Solutions. Access Control
  • 10. IAM Generic Enablers Identity & Access Control Management ▪ Keyrock – Identity Management ▪ Wilma – PEP Proxy ▪ AuthZForce – Authorization PDP
  • 12. Keyrock Main features Web Interface and Rest API for managing Identity ▪ Users, devices and groups management ▪ OAuth 2.0 and OpenID Connect - Single Sign On ▪ Application - scoped roles and permissions management ▪ Support for local and remote PAP/PDP ▪ JSON Web Tokens (JWT) and Permanent Tokens support ▪ Two factor authentication ▪ MySQL / PostgreSQL and external DB driver ▪ European eID authentication compatibility (CEF eIDAS)
  • 13. PEP Proxy for securing service backends ▪ Basic and complex AC policies support ▪ OAuth 2.0 Access Tokens support ▪ JSON Web Tokens (JWT) support ▪ Custom PDP configuration ▪ Integrated with API Management tools • APInf & API Umbrella • KONG Wilma Main features
  • 14. PAP and PDP Server for managing complex AC policies ▪ XACML-3.0 standard-compliant ▪ Cloud-ready RESTful ABAC framework with XML optimization ▪ Multi-tenant REST API for PDP and PAP ▪ Standards: ▪ OASIS: XACML 3.0 + Profiles (REST, RBAC, Multiple Decision) ▪ ISO: Fast Infoset ▪ Extensible to attribute providers (PIP), functions, etc. AuthZForce Main features
  • 15. Identity and AC Management OAuth 2.0 flow IAM Infrastructure IdM Service Applica4on Oauth 2.0 requests access-token User info request
  • 16. Identity and AC Management Accessing GEs and services IAM Infrastructure IdM PAP Policies DB PDP Service Applica8on Service Backend PEP OAuth2 flow Request + token Check auth
  • 17. Identity and AC Management Accessing GEs and services ▪ Level 1: Authentication ▪ Level 2: Basic Authorization ▪ Level 3: Advanced Authorization
  • 18. Identity and AC Management Accessing GEs and services ▪ Level 1: Authentication • Check if a user has been authenticated ▪ Level 2: Basic Authorization ▪ Level 3: Advanced Authorization
  • 19. Identity and AC Management Level 1: Authentication IAM Infrastructure IdM Service Application Service Backend PEP OAuth2 flow Request + token Check token
  • 20. Identity and AC Management Accessing GEs and services ▪ Level 1: Authentication • Check if a user has been authenticated ▪ Level 2: Basic Authorization • Checks if a user has permissions to access a resource • HTTP verb + resource path ▪ Level 3: Advanced Authorization
  • 21. Identity and AC Management Level 2: Basic Authorization IAM Infrastructure Service Application Service Backend PEP OAuth2 flow Request + token IdM PAP PDP Check token & authorization
  • 22. Identity and AC Management Accessing GEs and services ▪ Level 1: Authentication • Check if a user has been authenticated ▪ Level 2: Basic Authorization • Checks if a user has permissions to access a resource • HTTP verb + resource path ▪ Level 3: Advanced Authorization • Custom XACML policies
  • 23. Identity and AC Management Level 3: Advanced Authorization IAM Infrastructure IdP Service Application Service Backend PEP OAuth2 flow Request + token Check token PAP Policies DB PDP Check auth
  • 24. Identity and AC Management JSON Web Tokens ▪ A JSON Web Token (JWT) is a JSON object defined in RFC 7519 as a safe way to represent a set of information between two parties. ▪ The token is composed of a header, a payload, and a signature.
  • 25. IAM Infrastructure Service Application Service Backend PEP OAuth2 flow (JWT) Request + JWT IdM PAP PDP Identity and AC Management JSON Web Tokens Token validation
  • 26. IAM Infrastructure Service Application Service Backend PEP OAuth2 flow (JWT) Request + JWT IdM PAP PDP Check authorization Identity and AC Management JSON Web Tokens Token validation
  • 27. Keyrock Identity attributes ▪ Definition of custom attributes in users’ profile • List of attributes configurable in config file • Users can define the values in the UI ▪ The attributes are included in the users’ profile returned when validating a token ▪ Service providers can use them for personalizing the services ▪ Typical use case -> Accessibility Research paper published at https://doi.org/10.3390/app9183813
  • 28. Keyrock Identity attributes ▪ Typical use case -> Accessibility • Provide interfaces adapted to the users’ functional capabilities
  • 29. Keyrock External DB Authentication ▪ SQL/LDAP External Authentication Driver ▪ Documentation available • https://fiware- idm.readthedocs.io/en/latest/installation_and_administration_guide/confi guration/index.html#external-authentication-ldap OAuth2 Keyrock’s Database - Orgs - Apps - Roles - … LDAP Server Users directory - username - password - email Authentication check
  • 30. API Management API Umbrella & PEP Proxy Back-end Request + API Key Web App API Umbrella Back-end Back-end Back-end
  • 31. API Management API Umbrella & PEP Proxy Back end App IAM Infrastruture Request + access-token Web App Oauth Library PEP Proxy API Umbrella access-token OK + user info (roles) Oauth2 flows access_token Back end App Back end App Back end App
  • 32. eID Integration CEF eIDAS ▪ eIDAS (electronic IDentification, Authentication and trust Services) is an EU regulation to enable secure and seamless electronic interactions between businesses, citizens and public authorities. ▪ Access to European services by national eID eIDAS country 1 eIDAS country 2 eIDAS country 3 Service User country 2 eID
  • 33. eID Integration FIWARE Identity Gateway ▪ Integration of FIWARE Security Framework with eIDAS ▪ Every application registered in Keyrock can be linked to a eIDAS node • By an OAuth 2.0 – SAML2 gateway ▪ Users can then authenticate using their national eID • AC policies based on user eIDAS profile ▪ Transparent for applications providers
  • 34. eID Integration FIWARE Identity Gateway IAM Infrastructure IdP Service Application Oauth 2.0 requests access-token User info request eIDAS eIDAS node 1 IdP 1 eIDAS node 2 IdP 2 … SAML flow Authentication
  • 35. Data Usage Control ▪ Security Framework and Data Usage Control • Ensures data sovereignty • Regulates what is allowed to happen with the data (future usage). ▪ Integration with Big Data and Processing GEs
  • 37. Security GEs documentation ▪ Identity Management – Keyrock • https://keyrock-fiware.github.io • https://github.com/ging/fiware-idm • https://catalogue.fiware.org/enablers/identity-management-keyrock ▪ PEP Proxy – Wilma • https://github.com/ging/fiware-pep-proxy • https://catalogue.fiware.org/enablers/pep-proxy-wilma ▪ Authorization PDP – AuthZForce • https://github.com/authzforce/server • https://catalogue.fiware.org/enablers/authorization-pdp-authzforce