TAS3 Trusted Architecture for Secure Shared Services (with Privacy) and Personal Data Store
Sampo Kellomäki (sampo@zxidp.org)
- 13. May 2011, EIC 2011, Munich
11
Trusted Architecture for Secure Shared Services (with Privacy) and - - PowerPoint PPT Presentation
TAS 3 Trusted Architecture for Secure Shared Services (with Privacy) and Personal Data Store Sampo Kellomki (sampo@zxidp.org) 13. May 2011, EIC 2011, Munich 11 EIC 2011 Munich, May 13, 2011 Sampo Kellomki: TAS3 Arch 11 2 TAS3 Trust
11
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 2
Modelling & configuration Management Modelling & configuration Management Runtime & Enforcement Model Audit Audit & Monitor TAS3 Trust Network Domains Organization A Domains
...
Organization B Domains
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 3
Alumni Portal Alumni Portal Identity Provider 1
User Welcome, Alice! Here is your study plan. ... (protected content)
Please Login Username: Password: Login You have requested protected content, please login. Login Using: IdP 1
TAS3 TAS3 TAS3 TN TN TN
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 4
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 5
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 6
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 7
User is King Web Site 1 Web Site 2 Identity Provider (Authentication) Personal Service Discovery Trust, Scoring, and Reputation Self-audit Dashboard "Front Channel" SSO Audit (comprehensive and ecosystemwide) Governance & Interoperable Technology
TAS³ Architecture Mini 2010
"Backchannel" O C T Web Service 5 Web Service 4 Web Service 3
= Access Controll and Authorization
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 8
TAS3 Architecture 2010 Component Overview v2.3 Payload Applications TAS3 User Tools Core TAS3 Infrastructure Front End (e.g. Web GUI) Business Process Engine Web Services User Audit Dashboard Policy Editor & Consent Management Delegation Settings Identity Provider Core TAS3 Infrastructure Backchannel Event Bus Trust & Reputation Delegation Service Credentials & Policies Negotiator ID Mapper Discovery Registry Audit Events Management Events Identity Aggregator Authorization (Audit Analysis) Online Compliance Testing (Operation Monitoring) Ontology Handler Web Browser or Fat Client Client side app (e.g. AJAX) Audit & Monitor
Modelling & Config. Mgmt Trust Network Mgmt Processes
Org. Level Ontology
Models Modelling Tools Config. Data Policies Organization Domain Runtime & Enforcement
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 9
Client App Service Corp C Firewall
Corp D Firewall
Alice Bob
1 2 3 4
20100531 Sampo
Built-in rules of the application Rules of the operator Rules of the TN Personal rules Built-in rules of the service Rules of the operator Personal rules TN PDP Org C PDP Org D PDP Alice PDP Bob PDP PEP Rs In PEP Rq Out PEP Rq In PEP Rs Out Master PDP Trust PDP Master PDP
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 10
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 11
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 12
User is King Web Site 1 Web Site 2 Identity Provider (Authentication) Personal Service Discovery Trust, Scoring, and Reputation Self-audit Dashboard "Front Channel" SSO Audit (comprehensive and ecosystemwide) Governance & Interoperable Technology
TAS³ Architecture Mini 2010
"Backchannel" O C T Web Service 5 Web Service 4 Web Service 3
= Access Controll and Authorization
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 13
GUI Layer Application Layer Application Layer Legacy / Data Layer TAS3 Security Layer Web Services Stack Layer Web Services Stack Layer Back Channel Communication Layers (SOAP, HTTPS) TAS3 Security Layer TAS3 Security Layer Front Channel Communication User Agent Layer 20100503 SK Human Layer N.B. Not all architectural components are depicted. In particular none of the infrastructure related to authorization is shown.
TAS3 Layering
Web Browser Client Side Application Frontend 1 Web GUI Frontend Application TAS3 API Web Services Client Stack Web Service Provider 2 Web Services Provider Stack TAS3 API Backend Application Web Services Client Stack TAS3 API Web Service Provider 3 Web Services Provider Stack TAS3 API Backend Application Legacy Application SSO Connector Identity Provider User Dashboard Policy Editor Consent Manager Aggregation & Discovery Settings Delegation Settings Discovery Registry & ID Mapper
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 14
TAS3 Architecture 2010 Component Overview v2.3 Payload Applications TAS3 User Tools Core TAS3 Infrastructure Front End (e.g. Web GUI) Business Process Engine Web Services User Audit Dashboard Policy Editor & Consent Management Delegation Settings Identity Provider Core TAS3 Infrastructure Backchannel Event Bus Trust & Reputation Delegation Service Credentials & Policies Negotiator ID Mapper Discovery Registry Audit Events Management Events Identity Aggregator Authorization (Audit Analysis) Online Compliance Testing (Operation Monitoring) Ontology Handler Web Browser or Fat Client Client side app (e.g. AJAX) Audit & Monitor
Modelling & Config. Mgmt Trust Network Mgmt Processes
Org. Level Ontology
Models Modelling Tools Config. Data Policies Organization Domain Runtime & Enforcement
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 15
Client App Service Corp C Firewall
Corp D Firewall
Alice Bob
1 2 3 4
20100531 Sampo
Built-in rules of the application Rules of the operator Rules of the TN Personal rules Built-in rules of the service Rules of the operator Personal rules TN PDP Org C PDP Org D PDP Alice PDP Bob PDP PEP Rs In PEP Rq Out PEP Rq In PEP Rs Out Master PDP Trust PDP Master PDP
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 16
IdP Discovery SP1: Frontend SP2: Web Service Master PDP1 Master PDP2 User Trust PDP H T T P W S C P E P S S O A t t r P E P e t c Payload Servlet P E P s e s JSESSION ZXSES H T T P WSPin PEP-rs-in WSPout PEP-rs-out e t c DB Inter- ceptor Inter- ceptor P E P XACML SAML profile XACML SAML profile with TAS3 Trust extensions ID-WSF 2.0 Discovery with TAS3 Trust extensions D I C ID-WSF 2.0 w/TAS3 ext SAML 2.0 CTX 1 2 3 7 mod_auth_saml
zxid_simple() zxididp zxididp KENT KENT TUE ZXID Servlet Filter zxid_az() zxid_az() TAS3 Integration w/ZXID
20091016 SK
ZXID AXIS2 Module zxid_call() zxid_wsp_validate() zxid_wsp_decorate()
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 17
Liberty specifications build on existing standards (SAML, SOAP, WS-Addressing, WS-Security, XML, etc.) Liberty Federation Framework ID-FF SAML 2.0 Liberty Identity Service Interface Specifications (ID-SIS) Liberty Web Services Framework (ID-WSF)
Enables identity federation and management through features such as identity/account linkage Simplified Sign-On, and simple session management. Enables interoperable identity services such as personal identity profile, contact book, presence, and so on Provides the framework for building interoperable identity services, permissions based attribute sharing, identity service description and discovery, and the associated security profiles.
Figure 1: Liberty Alliance Architecture (for comparison of similarity).
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 18
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 19
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 20
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 21
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 22
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 23
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 24
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 25
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 26
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 27
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 28
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 29
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 30
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 31
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 32
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 33
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 34
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 35
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 36
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 37
TAS3 Front Channel TAS3 Authoriz- ation TAS3 Back Channel (Deep SOA with Identity Enablement) TAS3 Audit SAML UMA Strong Auth ID-WSF WS-Sec XACML AMQP SWIFT Master Stork/eID PrimeLife Policy Edit PrimeLife PrimeLife Dashboard PrimeLife Anon Creds
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 38
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 39
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 40
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 41
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 42
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 43
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 45
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 46
IdP Discovery FE (appdemo) WSP (wspdemo) WSP (wspleaf) User (browser) 1 2,4 3 (yk) 5 6 7 8 PDP TAS3 Recursive Call Demo 20100219 sampo@symlab.com
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 47
TAS3 Delegated Web Service Access
v02 20100922 sk
Alice (Job seeker) Bob (Coach) IdP Deleg IDMap DiscoA Frontend SP1 WSP2 PDP Normal use of service by Alice Alice delegates and invites Bob uses invite to get delegated access to Alice’s service 1 2 3 4 5 6 7
to DITokA + perms
8
2. 3.
8.
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 48
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 49
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 50
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 51
User is King Web Site 1 Web Site 2 Identity Provider (Authentication) Personal Service Discovery Trust, Scoring, and Reputation Self-audit Dashboard "Front Channel" SSO Audit (comprehensive and ecosystemwide) Governance & Interoperable Technology
TAS³ Architecture Mini 2010
"Backchannel" O C T Web Service 5 Web Service 4 Web Service 3
= Access Controll and Authorization
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 52
TAS3 Architecture 2010 Component Overview v2.3 Payload Applications TAS3 User Tools Core TAS3 Infrastructure Front End (e.g. Web GUI) Business Process Engine Web Services User Audit Dashboard Policy Editor & Consent Management Delegation Settings Identity Provider Core TAS3 Infrastructure Backchannel Event Bus Trust & Reputation Delegation Service Credentials & Policies Negotiator ID Mapper Discovery Registry Audit Events Management Events Identity Aggregator Authorization (Audit Analysis) Online Compliance Testing (Operation Monitoring) Ontology Handler Web Browser or Fat Client Client side app (e.g. AJAX) Audit & Monitor
Modelling & Config. Mgmt Trust Network Mgmt Processes
Org. Level Ontology
Models Modelling Tools Config. Data Policies Organization Domain Runtime & Enforcement
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 53
Client App Service Corp C Firewall
Corp D Firewall
Alice Bob
1 2 3 4
20100531 Sampo
Built-in rules of the application Rules of the operator Rules of the TN Personal rules Built-in rules of the service Rules of the operator Personal rules TN PDP Org C PDP Org D PDP Alice PDP Bob PDP PEP Rs In PEP Rq Out PEP Rq In PEP Rs Out Master PDP Trust PDP Master PDP
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 54
IdP Discovery SP1: Frontend SP2: Web Service Master PDP1 Master PDP2 User Trust PDP H T T P W S C P E P S S O A t t r P E P e t c Payload Servlet P E P s e s JSESSION ZXSES H T T P WSPin PEP-rs-in WSPout PEP-rs-out e t c DB Inter- ceptor Inter- ceptor P E P XACML SAML profile XACML SAML profile with TAS3 Trust extensions ID-WSF 2.0 Discovery with TAS3 Trust extensions D I C ID-WSF 2.0 w/TAS3 ext SAML 2.0 CTX 1 2 3 7 mod_auth_saml
zxid_simple() zxididp zxididp KENT KENT TUE ZXID Servlet Filter zxid_az() zxid_az() TAS3 Integration w/ZXID
20091016 SK
ZXID AXIS2 Module zxid_call() zxid_wsp_validate() zxid_wsp_decorate()
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 55
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 56
Metadata Pointers Actual data (original format)
Pointers to docs by me in other services, e.g. photos Works of authoriship stored in PDS Pointers to docs about me in other services Cached copies
and bearer certificates. Descriptions and annotations controlled by me. Descriptions and annotations controlled by me. EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 57
PDS v04 SK 20100909
Metadata Pointers Actual data (original format)
Persona Selector Filter "Who asks" Filter (4pt PEP)
Personal PDP Personal Consent, Policy and Obligation Store
?
Query and ISN Cache CRUD Interface RESTful Interface Search and ISN Interface
Network Accessible Interfaces
Trust Negotiat Audit Dri
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 58
PDS X PDS A PDS B PDS C User X Index User A Instant Social Network Custodian
v04 SK 20100908
Index spiders User’s published preferences
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 59
PDS X PDS A PDS B PDS C User X Index User A Instant Social Network Custodian
v04 SK 20100908
Results Each user’s consent to be in result set is asked and ISN ID is passed. Launch a search N.B. "B" did not match search.
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 60
PDS X PDS A PDS B PDS C User X Index User A Instant Social Network Custodian
v04 SK 20100908
Any user in ISN can send message to all in ISN. Pseudonymity and distribution through Custodian ensures privacy.
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 61
PDS X PDS A PDS B PDS C User X Index User A Instant Social Network Custodian
v04 SK 20100908
Request Peer Pseudonyms Consent to move to peer mode is asked. Peer Pseudonyms are distributed Now peers can communicate directly without Custodian.
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 62
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 63
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 64
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 65
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 66
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 67
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 68
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 69
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 70
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 71
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 72
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 73
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 74
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 75
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 76
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 77
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 78
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 79
PDS v04 SK 20100909
Metadata Pointers Actual data (original format)
Persona Selector Filter "Who asks" Filter (4pt PEP)
Personal PDP Personal Consent, Policy and Obligation Store
?
Query and ISN Cache CRUD Interface RESTful Interface Search and ISN Interface
Network Accessible Interfaces
Trust Negotiat Audit Dri
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 80
PDS v04 SK 20100909
Metadata Pointers Actual data (original format)
Data by me Data about me
Persona Selector Filter "Who asks" Filter (4pt PEP)
Personal PDP Personal Consent, Policy and Obligation Store
?
Query and ISN Cache CRUD Interface RESTful Interface Search and ISN Interface
Network Accessible Interfaces
Trust Negotiat Audit Dri Audit Bus Consumer Interface User Self-Audit Dashboard Web GUI Received Audit Data Right of Access & Rectification Right of Access & Rectification & Audit drill down as iFrame and Web GUI Collected Audit Data Consent & Privacy Manager API Consent and Privacy Manager as iFrame and Web GUI
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 81
PDS v04 SK 20100909
Metadata Pointers Actual data (original format)
Data by me Data about me
Persona Selector Filter "Who asks" Filter (4pt PEP)
Personal PDP Personal Consent, Policy and Obligation Store
?
Query and ISN Cache CRUD Interface RESTful Interface Search and ISN Interface
Network Accessible Interfaces
Trust Negotiat Audit Dri Audit Bus Consumer Interface User Self-Audit Dashboard Web GUI Received Audit Data Right of Access & Rectification Right of Access & Rectification & Audit drill down as iFrame and Web GUI Collected Audit Data Consent & Privacy Manager API Consent and Privacy Manager as iFrame and Web GUI ID Map Delegation Discovery Personal IdP SSO Attribute Mgmt Personal IdP, Discovery, and Delegation Managemet are optional features, applicable only to enthusiast users. Personal Federation Database
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 82
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 83
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 84
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 85
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 86
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 87
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 88
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 89
EIC 2011 Munich, May 13, 2011 Sampo Kellomäki: TAS3 Arch 11 90