An online training course run by the FIWARE Foundation in conjunction with the i4Trust project. The core part of this virtual training camp (21-24 June 2021) covered all the necessary skills to develop smart solutions powered by FIWARE. It introduces the basis of Digital Twin programming using linked data concepts - JSON-LD and NGSI-LD and combines these with common smart data models for the sharing and augmentation of context data.
In addition, it covers the supplementary FIWARE technologies used to implement the common functions typically required when architecting a complete smart solution: Identity and Access Management (IAM) functions to secure access to digital twin data and functions enabling the interface with IoT and 3rd systems, or the connection with different tools for processing and monitoring current and historical big data.
This 12-hour online training course can be used to obtain a good understanding of FIWARE and NGSI Interfaces and form the basis of studying for the FIWARE expert certification.
Extending this core part, the virtual training camp adds introductory and deep-dive sessions on how FIWARE and iSHARE technologies, brought together under the umbrella of the i4Trust initiative, can be combined to provide the means for the creation of data spaces in which multiple organizations can exchange digital twin data in a trusted and efficient manner, collaborating in the creation of innovative services based on data sharing. In addition, SMEs and Digital Innovation Hubs (DIHs) that go through this complete training and are located in countries eligible under Horizon 2020 will be equipped with the necessary know-how to apply to the recently launched i4Trust Open Call.
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
FIWARE Training: Identity Management Access Control
1. Identity Management and Access Control
Security and API Management Chapter
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.
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
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