X-Road as a Platform to Exchange MyData Petteri Kivimäki, CTO 29th August 2018
Table of Contents MyData Roles How Does X-Road Work? X-Road as a Technical Platform for MyData MyData via X-Road What X-Road Does and Does Not Provide
MyData Roles MyData Operator Digital Identity Individual Consent Access Logs Consent Consent Individual – a person who authorizes data flows with consent. MyData Operator – provides a MyData accounts that enable digital consent management. Data Source – provides data about individuals. Data Using Service – uses the data provided by data sources. Data Data Source Data Using Service
How Does X-Road Work? X-Road Core Central Services Registry of trusted parties (organizations, servers) Trust Services Service Consumer Service Provider Security Server Security Server Signature and time-stamping of messages, logging Verify incoming messages, time-spamping, logging, access rights Trust Services Time-stamping of messages Validity of certificates (auth, sign)
X-Road as a Technical Platform for MyData MyData Operator Digital Identity Individual Consent Access Logs Consent Both consent and data are transferred via X-Road. X-Road logs all the requests and the logs are used for providing a centralized view to access logs where the individual can see who has accessed his or her data. X-Road provides Organization level authentication Machine to machine authentication Standardized messaging model Non-repudiation of messages Access rights management Address management and message routing Transportation level encryption. Access Logs Data Data Source Data Using Service X-Road Security Server
MyData via X-Road MyData Operator All the registered data using services have access to all the registered data sources. Consents are used for managing authorizations to access the data of individuals. 1. Check consent (*) 3.1 Check consent (*) (optional) Access logs (*) Access logs (*) Data Using Service Data Source 2. Send request 4. Return response Security Server Security Server 3. Check access rights (global group) * Checking consents and transfering access logs is done via X-Road.
MyData via X-Road Consents are managed by the MyData Operator. Every data source and data using service must implement the required MyData APIs and enable their services to be connected with MyData accounts. X-Road client/service identifier must be stored by the MyData Operator. Access rights to data sources are managed using X-Road global groups that are centrally managed by the X-Road operator. Registered data using services are added as members of the global group by the X-Road operator. Data sources grant the MyData global group access to their MyData services – all the members of the group then have access to the services.
MyData via X-Road All the registered data using services have access to all the registered data sources. Consents are used for managing authorizations to access the data of individuals. Data using service is responsible for checking the consent before sending a request. No consent is found => no request is sent. Consent is found => request is sent and the ID of the consent is included in the request (with other required parameters, e.g. user ID). Data source trusts the data using service and does not re-check the validity of the consent. Alternatively, data source may re-check the validity of the consent. Increases trust – and overhead.
MyData via X-Road All the requests and responses are logged by X-Road. Information related to MyData requests/responses (consent ID, data using service, data source, user ID identifying the individual, date/time etc.) is made accessible to the MyData Operator. Individuals can view who has accessed their information through their MyData account. Unauthorized use of individuals’ data can be automatically detected by analyzing the logs and is subject to penalties, e.g. exclusion from the service etc.
Certification Authority (CA) MyData via X-Road MyData Operator Central Server MyData Clients (global group): FI.COM.12345-6.Client FI.GOV.XXXX.XXX FI.COM.XXXX.XXX . Register data using service: FI.COM.12345-6.Client Register data source: FI.COM.65432-1.Service.getData.v1 Register data using service (subsystem): FI.COM.12345-6.Client Add subsystem to MyData Clients global group Publish data source: FI.COM.65432-1.Service.getData.v1 Grant MyData Clients access to: FI.COM.65432-1.Service.getData.v1 Data Using Service Data Source Security Server Get auth and sign certificates. Check validity. Security Server FI.COM.12345-6.Client FI.COM.65432-1.Service.getData.v1 Certification Authority (CA)
MyData Account and Consents ID Individual Data Using Service Data Source User ID Validity Label Consent ID – random string Social security number X-Road client identifier of the data using service X-Road service identifier of the data source The ID identifying the individual in the data source, e.g. social security number, Facebook ID, Google ID etc. The period when the consent is valid. Example 619KOZDLS2 121275-123A FI.COM.12345-6.Client FI.COM.65432-1.Service.getData.v1 1.3.2018-31.12.2018 Individuals manage consents through a MyData account. X-Road identifiers are used for identifyind the data using service and data source (not visible to the user). If social media user ID is used, the social media account must be confirmed and linked to the MyData account. In addition, the data source must define the ID that’s used for identifying the user. By default social security number is used.
X-Road Provides Organization level authentication Machine to machine authentication Standardized messaging model Non-repudiation of messages Logging of messages Access rights management Address management and message routing Transportation level encryption.
X-Road Does Not Provide Semantic interoperability Common business data models Standardized business APIs Implementation of the MyData Operator Consent verification.
Questions?
WWW.NIIS.ORG petteri.kivimaki@niis.org +372 7130 802