Web-sovelluspalvelut terveydenhuollossa? Juha Mykkänen, Marko Sormunen, PlugIT, Kuopion yliopisto, HIS-yksikkö PlugIT-puolivuotisseminaari, Kuopio, 28.10.2003.

Slides:



Advertisements
Samankaltaiset esitykset
Palvelut ja tiedot käyttöön: Palveluväylä
Advertisements

Web-sovelluspalvelutekniikat (Web services)
ENTERPRISE SEARCH Toteutustekniikka Mikko Uusitalo Tampereen ammattikorkeakoulu.
Moniasiakasympäristön etäyhteysratkaisujen vertailu
Active directory.
Web-palveluiden alusta Axis2
Sisäinen integraation ratkaisut
1 Java-kieleen pohjautuvien ohjelmien käyttökohteita Ohjelmat Appletit JavaBeans JavaScript Java Server Pages (JSP) Java Servletit J2ME, mobiililaitteet.
Integrointi.
Turvallinen etäyhteys – ratkaisuna: VPN (Virtual Private Network)
Linuxin rakenne ja ominaisuudet
PlugIT-tietoiskut •PlugIT-projektin tuotokset –Tiivistetty luettelo tällä hetkellä saatavilla olevista tuotoksista •Ohjelmistotuotannon nykytila ja tarvekartoitus.
Julkaisukielet ja - tekniikat tMyn1 Julkaisukielet ja -tekniikat •Verkko-ohjelmointi voidaan jakaa kahteen osaan: asiakaspuolen ja palvelinpuolen ohjelmointiin.
Web Services ©Reino Aarinen, Miksi?  Web Services tekniikalla voi muuttaa valmiit sovellukset Web sovelluksiksi.  Sovellus voi julkaista toiminnon.
Carita, Kati ja Juuso OSAO Myllytulli ja Mytlpt09E 2010
Avointa-hanke ja Prime Solutions Oy PlugIT-loppuseminaari
Johdatus web-palveluihin
Erik Fallenius Kevät  Taustaa ◦ Ontologiat  Tavoitteet  Teknologiat ◦ Dojo/AJAX ◦ JSON ◦ SOAP  Projektin kulku  Lopputulos – demo.
EXtensible Markup Language
Internet  Lingua Franca, kaikkien ymmärtämä yhteinen kieli: TCP/IP tai UDP/IP. ”Kaikki maaiman tietokoneet, liittykää yhteen”.  Suomeen 1990-luvun alussa.
Juha Mykkänen, Annamari Riekkinen, Kirsi Karvinen
Yhteenvetoa ydin- rajapintojen aamupäivän PlugIT-työpajasta Marko Sormunen PlugIT, Kuopion yliopiston atk-keskus
BPMN ja hiukan prosessien määrittelystä
PlugIT-seminaari Työpaja 2, ma 27.10: Kertomus- ja koodistoliittymät ja kansallisten hankkeiden yhteistyö Kertomus(arkisto)rajapinnat, klo.
JYVÄSKYLÄN YLIOPISTO 2006 Bluetooth-kirjautumismenetelmiä InSitu-järjestelmässä Tietotekniikan kandidaattiseminaari Tuukka Puranen
Koodistorajapinnat: Tekniset liittymämäärittelyt XML- ja http- rajapinnoille Juha Mykkänen, PlugIT, Kuopion yliopisto, HIS-yksikkö PlugIT-puolivuotisseminaari,
S Tiedonsiirto ja yhteyskäytännöt tietoliikenteen perusasioita top-down -lähestymistapa ohjelmistotekniikan näkökulma tavoitteena toimivat sovellukset.
 Eristävä moniosainen järjestelmä  Suodattaa suojattavan verkon ja vaarallisemman verkon välisiä yhteyksiä  Voidaan toteuttaa joko ohjelmistolla tai.
CASE: PlugIT- ja SerAPI-projektit
XML -kielen perusteet SIMO Seminaari Antti Mäkinen.
Kontekstinhallinta ja muut rajapintatarpeet Mika Tuomainen Juha Mykkänen SerAPI-projekti, HIS-tutkimus Kuopion yliopisto, Tietotekniikkakeskus, Centek.
Tietoturva Sami jarkko Henri Myllytulli mytlpt09e 2010.
Esa Ramstadius Jussi Iltanen MTT Agronet portaali.
Web 2.0 tiivistetysti 1. Ohjelmistoalusta on Web. Webtop korvaa Desktopin. Keskeistä yhteisöllisyys ja ”Software as a Service”. 2. Kollektiivisen älyn.
PlugIT-ydinrajapintademo Marko Sormunen PlugIT-projekti, HIS-yksikkö Kuopion tietotekniikkakeskus Kuopion yliopisto
Ydinpalveluiden (käyttäjä, potilas).NET-asiakassovellus: PatientCoreClientDemo PlugIT-loppuseminaari Koulutustyöpaja 1: Avoimet ohjelmistorajapinnat.
PlugIT-rajapintaesittely ja demo PlugIT-rajapintakoulutus , Kuopio.
JohdantotMyn1 Johdanto Verkkopalvelun koostamiseen käytetään koosteohjelmia ja ohjelmointikieliä. Verkkopalvelun toteutus voi vaatia myös palvelinohjelmointia.
Sähköisen työskentelyn ja verkostoitumisen palveluympäristö.
IP Security Architecture RFC2401-RFC2412 Tommi Lepistö Mika Hiltunen.
SerAPI: SERvice-based architecture and web services in healthcare Application Production and Integration – Palveluarkkitehtuuri ja web-sovelluspalvelut.
Hyväksyttyjen palvelurajapintojen tilanne ja koulutustarpeet Uudet palvelurajapinnat ja SerAPI-hanke HL7 Finland Common Services SIG Juha Mykkänen,
Shibboleth 2 uudet ominaisuudet & päivän käytännöt Haka koulutus
XHTML-perusteita Teppo Räisänen
Vertailu Rakentuu olemassa olevien tekniikoiden päälle Kehittää kokonaan uutta METEOR-S OWL-S WSMO SWSF FINVOICE.
Minimitason kontekstinhallinnan määrittely Yhteenveto Mika Tuomainen
SerAPI-Potilaslista osa I: Alustus , Kuopio Juha Mykkänen, Marko Sormunen, Assi Pöyhölä, Hannu Virkanen.
PlugIT-ydinrajapinnoista Marko Sormunen PlugIT-projekti, HIS-yksikkö Kuopion tietotekniikkakeskus Kuopion yliopisto
 MODx on julkaisujärjestelmän ja sovelluskehyksen risteytys, jonka lisenssinä on kaikille ilmainen avoimen lähdekoodin GNU GPL. MODx on suunniteltu ammattilaisten.
Kaksi- ja kolmitasoiset sovellukset Two and Three Tier Systems.
Pakkanen -arkkitehtuurin siirto toteutustekniikoihin
E-Työpaja: Rajapintamääritykset Rajapintamääritysten tilanne (Juha Rannanheimo) Kontekstinhallinta (Mika Tuomainen) Käyttäjä-, käyttöoikeus-,
XML Schema Teppo Räisänen Liiketalouden yksikkö.
HTTP (c) Reino Aarinen, HTTP yhteyskäytäntö Web asiakasohjelmat (yleensä erilaiset selaimet) käyttävät HTTP protokollaa tiedon siirtoon WWW sivustojen.
Joni Kelloniitty & Niko Säyriö
Pakkanen * * * Komponenttipohjaisen sovellustuotannon menetelmäpilotti PlugIT-seminaari Annamari Riekkinen ja Kirsi Karvinen FixIT-DoIT / HIS-tutkimusyksikkö.
Ydinpalveluiden (käyttäjä, käyttöoikeus, potilas).NET-palvelutoteutus: CoreServiceDemo PlugIT-loppuseminaari Koulutustyöpaja 1: Avoimet ohjelmistorajapinnat.
APACHE Kurssi: V Linux Sami Karjalainen OH3 Mika Haaja OH5.
XSL Teppo Räisänen
Miika Kuusinen LTY/Tietoliikenteen laitos 2003
SharePoint2010 ATK-seminaari Totti Nykvist.
H5 Tietoturva. Mitä on tietoturva Tietoturva on termi, joka tarkoittaa laitteiston ja tiedostojen suojaamista ulkopuolisilta. Tietoturva ei ole ainoastaan.
TIETOTURVA INTERNETISSÄ. MITÄ ON TIETOTURVA? Tietoturvalla pyritään suojaamaan yritykselle tärkeitä tietoja ulkopuolisilta. Tietoturvalle on asetettu.
1 WS-I vs REST vs Ajax Eetu Mäkelä. 2 WS-I WS-I on standardipino, joka määrittelee kaiken mitä tarvitaan siihen että jokin ohjelma voi tehdä RPC-kutsun.
Tietoturva internetissä

Tiedon suojaaminen ja turvaaminen
Sanni Pietiläinen Myelpt14a
JavaScriptin perusteet
Samba Tuukka Toropainen.
Esityksen transkriptio:

Web-sovelluspalvelut terveydenhuollossa? Juha Mykkänen, Marko Sormunen, PlugIT, Kuopion yliopisto, HIS-yksikkö PlugIT-puolivuotisseminaari, Kuopio,

2 Esityksen sisältö •Web-sovelluspalveluiden (Web Services) idea ja määritelmä •Tekniikat ja käyttötavat •Tekniikoiden lupaukset ja ”lupaukset” •Käyttökelpoisuus terveydenhuollon sovellusintegraatiossa? huippu-uutuus? vanhaa tavaraa uudessa paketissa? toimiiko ollenkaan?

3 Web-sovelluspalvelu (Web Service) •Tarjoaa toimintoja tai tietoja verkon kautta käytettäväksi eri sovelluksissa (sovelluspalvelu) •Ohjelmisto, –joka tunnistetaan Internet-osoitteella, –jonka tarjoamat liittymät määritellään XML:llä, –joka kommunikoi XML-viesteillä ja Internet-protokollien avulla [W3C] •Luonne –sisältää komponenttien piirteitä •palvelut tarjotaan liittymän kautta, oma siirtoprotokolla •välineet voivat generoida koodia liittymämäärittelystä –EI ole komponentti •puuttuu määritelty suoritusympäristö •voidaan toteuttaa eri tekniikoiden avulla (myös komponenttitekniikoilla) •ei ole ”asennettava” vaan ”verkon yli käytettävä” (aste-ero) •mahdollisuus sekä ”etäohjelmien” että ”dokumenttien” käyttöön integroinnissa •palvelut yleensä tilattomia, yksi palvelu”olio” / fyysinen palvelin

4 Web-sovelluspalvelutekniikat •Tiedon siirtoesitys ja siirto –tiedonvälitys verkossa yleensä http –siirtoprotokollan avulla –SOAP, määrittelee ”kirjekuoren” siirrettävälle sanomalle, voidaan käyttää eri siirtoprotokollien päällä (sähköposti, FTP, Jabber..) •Liittymien (tiedot, toiminnot) määrittely –WSDL, määrittelee kutsuttavia operaatioita, määrittelee alemman tason protokollat (esim. SOAP), luodaan/luetaan yleensä automaattisesti välineillä –XML-RPC käyttää http-protokollaa, määrittelee yksinkertaisia etäohjelmakutsuja –ebXML CPP/A tai muut XML-dokumenttimääritykset voivat määritellä tiedonsiirrossa käytettäviä dokumenttityyppejä ja -merkkauksia •Palveluiden dynaaminen löytäminen, rekisterit –UDDI –ebXML registry, välipalvelin..) •Lisämääritykset (-tasot) –toimintaprosessien määrittely, sopimukset, reititys, turvallisuus jne. •SOAP, WSDL, UDDI, ebXML, XML-RPC jne. perustuvat XML:ään, ja ”pelkkää” XML:ää mahdollista käyttää eri tasoilla

5 Web-sovelluspalveluiden toteutustapoja •Palvelukutsut –etäoperaatio, pyyntö - vastaus, ”puhelinkeskustelu” –tyypillisin yhdistelmä: SOAP+WSDL (+UDDI) + välitön vastaus palvelukutsuun (synkroninen) •hyvä välineistötuki, helppo päästä alkuun •SOAPin kautta laajennettavuutta ja mukautettavuutta –pelkkä http ja XML-operaatiot •yksinkertaisuus, matala aloituskynnys •Dokumenttisiirrot –tietopaketti, fire and forget, ”putkiposti” (tai pyyntö- ja vastausdokumentit) –SOAP + XML-dokumentit (esim. ebXML, Open CDA) + synkroninen tai asynkroninen kutsutapa •joustavuus, laajennusten käyttö (sekä liikenteessä että sisällössä) –mahdollista myös ilman SOAPia tai käyttäen SOAP + WSDL- tekniikoita –pelkkä http ja XML-dokumentit

6 etäohjelmakutsu vastaus XML-RPC, SOAP, http WSDL UDDI WSDL SOAP WSDL ”Tyypillinen” välineistötuettu web- sovelluspalvelu-arkitehtuuri Etäohjelmakutsu yleisesti (eri vaihtoehtoja) XML

7 dokumentti (dokumentti) SOAP, http, FTP.. ebXML registry XML, CDA (XML), (HTML,.doc) SOAP dokumentti CPP CPA Dokumenttipohjainen yhteistoiminta ebXML esimerkkinä CPA

8 Web-sovelluspalveluiden turvallisuus •Web-palveluliikenne http-protokollaa ”tyypillisesti” käyttämällä luo tietoturva- -aukon (liikenne läpi palomuurin portin 80) •Yhteyden turvaaminen (salaus) –https, SSL (kevyt sovelluskehittäjälle, raskas suoritus) –VPN (vaatii lisätyötä, paikallisia asetuksia) •Viestitason salaukset ja allekirjoitukset –SOAP-tasolla –XML digital signatures –vaativat lisätyötä, -suunnittelua ja sopimista •Turvallisuusinfrastruktuurin käyttö –esim. JAAS Java-sovelluspalvelimille, NTLM + Kerberos Windows- sisäverkoissa, sovelluspalvelinkohtaiset turvallisuuspiirteet –”palomuuri-reikä” voidaan tukkia esim. sisältötietoisten palomuurien avulla •Sovellustason tietoturva (sisäänkirjaus, yhteiset turvallisuuspalvelut) tulossa vähitellen, ei selkeitä standardeja

9 Web-sovelluspalveluiden lupaukset •”Alusta- ja tekniikkavaihtoehtojen tuki” +totta, merkki-, XML- ja Internet-pohjaisille sovelluksille runsaasti toteutusvälineitä eri alustoille •”Yleisten, laajalti levinneiden tekniikoiden hyödyntäminen” +totta, Internet-tekniikat laajasti käytössä (myös terveydenhuollossa) •”Löysä kytkentä sovellusten välillä” (loose coupling) ±RPC-tavan palveluiden käyttö on tiukkaa kytkentää, löysäämistä dokumenttien tai tietopohjaisen käytön (kopioinnin) avulla ±XML:ssä löysä kytkentä lisää joustavuutta mutta myös sovelluskohtaista toteutustyötä ±kytkentää tiukennetaan tietotyyppien (mm. Schema) ja lisämäärittelyjen (mm. käytettävät SOAP-lisätasot) kautta •”Palvelut ovat itsensä kuvaavia” –XML-taso: metatason (kuvailutiedon) merkitys on edelleen sovittava sovellusten välillä ” ” (XML-merkkaus voi helpottaa ihmisen ymmärtämistä) –WSDL-taso: vaikka liittymän (muuttunut) määritys luetaan haluttaessa, on toteutus silti tehtävä / muutettava vastaamaan määritystä

10 •”Palvelut löydetään dynaamisesti ajon aikana” ±onnistuu rekistereitä käyttämällä, onko kuitenkaan tavoitteena, myös mediaattoreiden / integrointialustojen avulla reititykset ja muunnokset •”Toimittajariippumattomuus” +”peruspiirteitä” käyttämällä yhteentoimivuus ilman suuria muutoksia –epäyhteensopivuuksia, standardien versiot ja ”pinot”, puutteellinen standardituki •”Kevyt teknologia, helppo opittavuus” +pitää paikkansa yksinkertaisimpien käyttömallien kohdalla (XML+http, XML-RPC) –jo SOAPin laajennusten käytössä paljon opiskeltavaa ja sovittavaa –määritysten ja versioiden lukumäärän jatkuva kasvu, määritysten väliset suhteet •Kaikki tukevat, vahvuutena alustaneutraalius, web-tekniikat •Paljon odotuksia, uuden tekniikan lastentaudit, kaikki tukevat Web-sovelluspalveluiden lupaukset..

11 Käyttö terveydenhuollon sovellusintegraatiossa? •http- ja XML-pohjaiset ratkaisut –yksinkertaiset peruspalvelut, avoimet ydinpalvelurajapinnat –kevyt toteutus ja käyttöönotto –reititys, turvallisuus ratkaistava ”erikseen” •SOAP –laajennusmahdollisuudet (reititys, turvallisuus jne.) –työmäärä kasvaa laajennuksia käytettäessä •SOAP, WSDL, (UDDI) –peruspalvelut, ydinpalvelurajapinnat, tiukasti integroidut sovellukset, vuorovaikutteisuus –SOAPin edut, välinetuki (esim. WSDL -> valmis koodi), mutta myös välinetuessa ”yllättäviä” aukkoja •Dokumenttipohjaiset ratkaisut –CDA-dokumenttien välitys –joustavuus (erilaiset kutsutavat, löyhä kytkentä) •Sovelluspalvelimissa, integrointialustoissa, web-palvelimissa, tietokannoissa yhä enemmän käyttöä tukevia piirteitä •Ilman lisätyötä vaativia turvallisuuspiirteitä vain organisaation sisällä tai täysin julkisissa sovelluksissa

12 Lopuksi •minimivaatimukset sovelluksille –tarjoaja: web-palvelin, xml-parserit –hyödyntäjä: yhteyskomponentit (http), xml-parserit •standardoinnissa monta osapuolta –IETF, W3C, OASIS, WS-I, BPMI, OMG, yks. yritykset.. –eri standardiperheiden kerroksissa päällekkäisyyksiä, viime aikoina lähentymistä mutta EI yhteistä ohjausta •web-palveluiden käytön laskutuksessa ei vakiintuneita käytäntöjä, sopimuskohtaista, organisaation sisäistä, ei ”globaaleja palvelumarkkinoita” •oikean tekniikkajoukon valinta erilaisiin vaatimuksiin +aluksi käyttöön pisimmälle standardoituneet osat: perus-http(s)- pohjaiset palvelut, XML, perus-SOAP ja sitten: +keveys, avoimuus, nopea toteutus, ohjelmakutsut (WSDL) +laajennettavuus, varmennukset, reititykset, viestit (dokumentit) menopeli monenlaiseen maastoonuusi tekniikkaperhe, ydin kypsymässä hyödyntää vanhoja ajatuksia (liittymät, web-tekniikat) vanhat sovellukset uusien palvelujen pohjana toimii varmimmin (ja löytyy paras välinetuki), kun pitäydytään peruspiirteissä ja -tekniikoissa

13 Materiaalia Component and Service Technology Families: Web Service technologies. PlugIT, Newcomer E. Understanding web services – XML, WSDL, SOAP, and UDDI. Addison-Wesley, Peltz C. Applying design issues and patterns in web services. DevX, Jupitermedia Corp., Hewlett-Packard, Kunisetty S. Oracle9i Application Server – Three rules of thumb for architecting web services. The Middleware Architecture Series, Oracle Technology Network, September Julkishallinnon XML-strategia. Työryhmämuistioita 18/2003, Valtiovarainministeriö, hallinnon kehittämisosasto. SOAP 1.1: SOAP 1.2: WSDL 1.1: UDDI: ebXML: