Kansallinen palveluväylä Petteri Kivimäki Kansallisen palveluväylän tekninen työpaja 13.10.2015 Espoo
Sisältö Yleisesittely Tiedonsiirtoprotokolla Sovitinpalvelu Tekniset vaatimukset Ympäristöt Liityntäkatalogi
Kansallinen palveluarkkitehtuuri Yhteentoimiva digitaalisten palvelujen infrastruktuuri, jonka avulla tiedon siirto organisaatioiden ja palvelujen välillä on helppoa Ohjelmassa luodaan Kansallinen palveluväylä Kansalaisten, yritysten ja viranomaisten tarvitsemat yhteiset palvelunäkymät Uusi kansallinen sähköinen tunnistusratkaisu Kansalliset ratkaisut organisaatioiden ja luonnollisten henkilöiden roolien ja valtuutusten hallintaan
Kansallisen tunnistamisen mallin työryhmä Kansallisen tunnistamisen mallin referenssiryhmä Kansallisen palveluarkkitehtuurin ohjelmakokonaisuus Strateginen johtoryhmä Ohjelmaryhmä Ohjelmapäällikkö Tunnistaminen Kehittämispäällikkö (hankkeen omistaja) Palveluväylä Kehittämispäällikkö (hankkeen omistaja) Palvelunäkymät Kehittämispäällikkö (hankkeen omistaja) Roolit ja valtuutus Kehittämispäällikkö (hankkeen omistaja) Kokonaisarkkitehtuuri Tietoturva ja tietosuoja Ohjausryhmä Ohjausryhmä Ohjausryhmä Ohjausryhmä Hankinnat Hankepäällikkö Projektiryhmä Yhteistyöryhmät Hankepäällikkö Projektiryhmä Yhteistyöryhmät Hankepäällikkö Projektiryhmä Yhteistyöryhmät Hankepäällikkö Projektiryhmä Yhteistyöryhmät Viestintä ja sidosryhmäyhteistyö Lainsäädäntö
Yleisesittely Perustietovarannot Julkisen hallinnon kohdealue- ja toimialakohtaiset palvelut Valtion yhteiset palvelut Kuntien palvelut Yrityssektorin palvelut Palveluväylä Omien tietojen katselu Palvelunäkymät Palveluoppaat Uusi palveluhaku + karttanäkymä Personoitu palvelunäkymä Sähköiset palvelut (federointi, koonti) Rooli/ valtuushallinta Palvelutietovaranto PTV Tunnistuspalvelut Palveluväylän hallinta Tietoturva, raportointi. lokipalvelu Portaalialusta sisällöntuotantoon, hakumoottori välttämättömiä heti keskeiset palvelut liitettävä alkuvaiheessa, muut myöhemmässä vaiheessa
Yleisesittely
Yleisesittely Tiedonvälityskokonaisuus, joka toimii viestiväylänä siihen liitettyjen palveluiden ja tietovarantojen välillä Loppukäyttäjälle läpinäkyvä tietojärjestelmien välillä toimiva tiedonvälityskerros Kytkee toisiinsa erilaisia palveluita ja tietovarantoja Ei itsessään muuta tai luo uusia toiminnallisia palveluprosesseja Hyödyt syntyvät väylään kytketyistä tiedoista ja palveluista, ei väylästä itsestään Palveluväylän arvo on sen muodostamassa standardoidussa tietojen vaihdon ratkaisumallissa
Yleisesittely Voidaan kytkeä sekä julkisen että yksityisen sektorin palveluita Kytkettävien palveluiden on täytettävä määritellyt tekniset rajapintavaatimukset Väylään kytketyt palvelut ja tiedot voivat olla vapaasti käytettävissä tai sopimuksenvaraisia Hyödyntäjän ja tuottajan kahdenvälinen sopimus (~tietolupa) Myös avoimen datan palvelut tervetulleita
Yleisesittely Alustana Virossa käytössä olevan X-Road-ratkaisun versio 6 Palveluväylän ydin koostuu Siihen liittyneiden organisaatioiden liityntäpalvelimista Palveluväylän keskuspalvelimista Palveluväylän sisäinen liikenne on julkisen internetin yli tapahtuvaa liityntäpalvelinten välistä liikennettä Kaikki liikenne salataan ja allekirjoitetaan digitaalisesti Ei yhtä yksittäistä palveluväyläkomponenttia Palveluväylä on hajautettu järjestelmä
Yleisesittely Luotettava ja turvallinen tiedonsiirtokanava julkisen internetin yli Mahdollistaa myös muiden verkkoratkaisujen hyödyntämisen Kaikki palveluväylää kulkeva liikenne salataan ja allekirjoitetaan digitaalisesti Tiedot salataan tiedonsiirron ajaksi SSL-salausprotokollalla Kaikki tieto allekirjoitetaan varmenteilla Kaikki tapahtumat kirjataan liityntäpalvelinkohtaiseen lokiin, joka mahdollistaa tapahtumien todentamisen jälkikäteen Sanoma, allekirjoitus, aikaleima
Yleisesittely
Yleisesittely
Yleisesittely Keskuskomponentit Keskuspalvelin Tiedot väylään liitetyistä liityntäpalvelimista ja niitä käyttävistä organisaatioista Paikalliset kopiot liityntäpalvelimilla Konfiguraatiopalvelin Konfiguraatiotietojen jakelu liityntäpalvelimille Käyttö ei pakollista jakelu voidaan tehdä myös suoraan keskuspalvelimelta käsin Keskuspalvelimen liityntäpalvelin Keskuspalvelinten tarjoamien keskuspalvelujen julkaisu väylän muiden liityntäpalvelinten käyttöön Teknisiä palveluja, esim. organisaatioiden lisäys ja poisto
Yleisesittely Varmennepalvelu (Certificate Authority, CA) Keskus- ja liityntäpalvelinten palvelinvarmenteet OCSP-palvelin (Online Certificate Status Protocol) Sertifikaattien voimassaolon tarkistus Aikaleimapalvelu (Time Stamping Authority, TSA) Väylän kautta lähetettyihin sanomiin lisätään varmennettu aikaleima Mahdollistaa lokien muuttumattomuuden todentamisen
Yleisesittely Liityntäpalvelin Tietojärjestelmien ja lähteiden liityntäpiste palveluväylään Kokoonpano vakioitu Voi olla organisaatiokohtainen tai monen organisaation kesken yhteinen Jokaisella liityntäpalvelimella oma sertifikaatti Käytetään liityntäpalvelinten välisissä yhteyksissä Jokaisella organisaatiolla oma sertifikaatti Sertifikaatti liityntäpalvelinkohtainen Käytetään organisaation järjestelmien lähettämien sanomien allekirjoittamiseen
Yleisesittely
Yleisesittely VRK ja CSC vastaavat keskuskomponenttien ylläpidosta VRK vastaa varmennepalvelun ja aikaleimapalvelun ylläpidosta ja toteutuksesta Väylään liittynyt organisaatio Vastaa omien tietojensa ja palveluidensa ylläpidosta Päättää kenelle jakaa tietojaan Vastaa siitä, että kytkettävät palvelut täyttävät määritellyt tekniset rajapintavaatimukset Vastaa tietojen välityksestä liityntäpalvelimeensa Ylläpitää liityntäpalvelimensa
Yleisesittely Palveluväylä vastaa keskitetyistä palveluista ja liikenteestä liityntäpalvelinten välillä Osoitteiden hallinta Reititys Käyttöoikeuksien hallinta Salaus Aikaleimat Lokitus Lokit liityntäpalvelinkohtaisia, ei yhtä keskitettyä lokia Virheiden käsittely
Yleisesittely Palveluväylä säilyy toiminnallisena määräajan myös ilman keskuspalvelimia Väylään liittyneiden organisaatioiden ja liityntäpalvelinten tiedot keskuspalvelimella Tiedoista paikalliset kopiot liityntäpalvelimilla Päivitetään määräajoin Voimassaoloaika määriteltävissä Väylä toimii niin kauan, kunnes liityntäpalvelinten paikalliset kopiot vanhenevat Aikaleimapalvelun ja OCSP-tarkistusten jatkuva toiminta väylän kannalta kriittistä voimassaoloaika tunteja, ei päiviä
Tiedonsiirtoprotokolla Palveluväylään liittyminen edellyttää X-Roadtiedonsiirtoprotokollan toteuttamista liitettävään järjestelmään SOAP 1.1 X-Road määrittelee Otsikkotietojen rakenteen Body-osan rakenteen Rajapintakuvaukset (WSDL) Lisätietoja https://confluence.csc.fi/pages/viewpage.action?pageid=508 73043
Tiedonsiirtoprotokolla - request
Tiedonsiirtoprotokolla - response
Sovitinpalvelu Palveluväylän edellyttämät sanomamuunnokset voidaan toteuttaa erillisessä sovitinpalvelussa Sijoittuu liityntäpalvelimen ja liitettävän järjestelmän väliin SOAP-pohjaisten järjestelmien kohdalla muutokset suoraviivaisia REST-mallisten järjestelmien kohdalla muutokset työläämpiä Sovitinpalvelu voidaan toteuttaa Suoraan liitettävään järjestelmään Erillisenä komponenttina samalla palvelimella järjestelmän kanssa Erillisenä komponenttina omalla palvelimellaan tai jo käytössä olevassa integraatioratkaisussa
Sovitinpalvelu
Sovitinpalvelu
Sovitinpalvelu Sovitinpalvelun esimerkkitoteutus https://github.com/petkivim/x-road-adapter-example XRd4J - Java ohjelmakirjasto X-Road v6 asiakas- ja palvelusovellusten kehittämiseen https://github.com/petkivim/xrd4j Ohjeita REST-rajapintojen toteutukseen https://github.com/jointxroad/api-standards
Tekniset vaatimukset Liityntäpalvelin Kokoonpano vakioitu Poikkeuksina varmuuskopiointiin ja valvontaan käytettävät ohjelmistot Ubuntu 14.04 LTS RHEL 7 Tietoturvallisuuden perustaso (ST4) Liitettävä järjestelmä X-Road-tiedonsiirtoprotokollan toteutus (sovitinpalvelu) Ensin liittyminen testiympäristöön ja vasta sitten tuotantoon
Ympäristöt Kehitys (CSC) avattu 3/2015 Uusien versioiden ja ominaisuuksien testaaminen Avoin kenelle tahansa Tuotannosta täysin erilliset varmenne- ja aikaleimapalvelut Testi (CSC) avattu 10/2015 Tuotantoa vastaava Vain organisaatioille Tuotanto (CSC) avataan 18.11.2015 Vain organisaatioille Suomalaisen sovelluskehityskumppanin tuki (~kehittävä ylläpito) Varmenne- ja aikaleimapalvelut (VRK) Testi- ja tuotantoympäristöt
Liityntäkatalogi EAI & Turvaväylä Kansallinen palveluväylä (X- Road-osuus) Integraatioalusta X Integraatioalusta X Liityntäkatalogi VIA Integraatioalusta X Integraatioalusta X
Liityntäkatalogi Rekisteri kansallisessa palveluväylässä tarjottavista palveluista tarkoituksena on helpottaa tiedon löytämistä eri tietojärjestelmistä Tekniset että hallinnolliset kuvaukset kaikista palveluväylässä julkaistuista rajapinnoista Ensimmäinen versio julkaistaan 18.11.2015
Kuinka päästä alkuun? Dokumentaatioon tutustuminen http://esuomi.fi/palveluntarjoajille/palveluvayla/ Koodiesimerkkeihin tutustuminen Sovitinpalvelun esimerkkitoteutus https://github.com/petkivim/x-road-adapter-example XRd4J : Java-kirjasto X-Road asiakasohjelmien ja palveluiden toteutukseen https://github.com/petkivim/xrd4j X-Road kehittäjäyhteisö https://github.com/jointxroad/about Kehitysympäristöön liittyminen http://esuomi.fi/palveluntarjoajille/palveluvayla/liittymisohjekehitysymparisto/ Testiympäristöön liittyminen https://confluence.csc.fi/pages/viewpage.action?pageid=527990
Kiitos! Petteri Kivimäki Järjestelmäpäällikkö Väestörekisterikeskus petteri.kivimaki@vrk.fi puh: 0295 535 027, GSM: 050 593 1710