4.2 Teenused

Teenus X-tee mõistes on eeldefineeritud päring-vastus, mille asutuse (või ettevõtte) infosüsteem saadab andmekogule ja millele andmekogu annab vastuseks kokkulepitud andmete koosseisu.

Teenused jagunevad andmeteenusteks, metateenusteks (teenused teenuste kohta) ja haldusteenusteks (teenused X-tee toimimise tagamiseks).

Tehniliselt kirjeldatakse teenused WSDL definitsiooniga. SOAP ja WSDL mõistes on teenus operatsioon (kirjeldatakse portType elemendiga), millel sisend ja väljund sõnum (kirjeldatakse message elementidega).


4.2.1  Andmeteenused

Andmeteenused on harilikult iga andmekogu jaoks unikaalselt välja töötatud ja selle andmekogu spetsiifilised teenused, mille kasutamise võimaldamine infosüsteemide poolt on X-tee eesmärk. Andmeteenuste sisend ja väljund on kirjeldatud vastava andmekogu teenuste kirjelduses.


4.2.2  X-tee metateenused (ehk kontrollpäringud)

Metateenused on abiteenused, mille abil on võimalik pärida infot andmeteenuste sooritamiseks e. teenused teenuste kohta.

4.2.2.1  Ülevaade metateenuste kasutajatest ja osutajatest

Järgnevalt on kirjeldatud meetodeid, mille abil X-tee liikmed saavad teada, millised andmeteenused on neile kättesaadavad ja kes neid teenuseid pakuvad. Selle jaoks tuleb kõigepealt saada nimekiri X-tee liikmetest ja alamsüsteemidest ja vajadusel ka kesksetest teenustest. Seejärel kontakteeruda teenuste osutajatega ja küsida nimekirja saadaolevatest andmeteenustest.

Teenuste osutajate nimekiri - turvaserveri kliendid saavad endale küsida nimekirja potentsiaalsetest teenuseosutajatest. Selleks tuleb teha HTTP GET päring turvaserverile http://SECURITYSERVER/listClients või https://SECURITYSERVER/listClients. Sõna SECURITYSERVER asemele tuleb panna tegelik turvaserveri aadress. Lisaks on võimalik saada klientide nimekirja ka teistest liitunud X-tee komplektidest (nt. Soome X-teest) kirjutades URL-i http://SECURITYSERVER/listClients?xRoadInstance=AA, kus xRoadInstance kirjeldab X-tee komplekti ja AA asendate keskkonna identifikaatoriga (nt. ee-dev Eesti arenduskeskkonna jaoks või FI-DEV Soome arenduskeskkonna jaoks).

NB: Turvaserver peab olema seadistatud samas keskkonnas, mille määrate xRoadInstance väärtuseks.

Kesksete teenuste nimekiri - turvaserveri kliendid saavad küsida nimekirja kesksetest teenustest tehes HTTP GET päringu http://SECURITYSERVER/listCentralServices või https://SECURITYSERVER/listCentralServices. Sõna SECURITYSERVER asemele tuleb panna tegelik turvaserveri aadress. Lisaks on võimalik saada kesksete teenuste nimekirja ka teistest liitunud X-tee komplektidest (nt. Soome X-teest) kirjutades URL-i http://SECURITYSERVER/listCentralServices?xRoadInstance=AA, kus xRoadInstance kirjeldab X-tee komplekti ja AA asendate keskkonna identifikaatoriga (nt. ee-dev Eesti arenduskeskkonna jaoks või FI-DEV Soome arenduskeskkonna jaoks)..

NB: Turvaserver peab olema seadistatud samas keskkonnas, mille määrate xRoadInstance väärtuseks.

Teenuste nimekiri - X-tee pakub kahte meetodit (metateenust) saamaks X-tee kliendile pakutavate teenuste nimekirja. Mõlemad meetodid kutsutakse välja kui tavalised X-tee teenused (vt. spetsifikatsiooni  http://www.x-tee.ee/docs/live/xroad/pr-mess_x-road_message_protocol.html):

  • listMethods - annab nimekirja kõigist teenustest, mida teenuse osutaja pakub;
  • allowedMethods - annab nimekirja kõigist teenuse osutaja teenustest, millele kliendil on õigus ligi pääseda.
  • getWsdl - Tagastab konkreetse teenuse WSDL-i.
  • getSecurityServerMetrics - Tagastab turvaserveri mõõdikud.
  • getSecurityServerOperationalData - Tagastab operatiivsed andmed turvaserveri kohta.
  • getSecurityServerHealthData - Tagastab turvaserveri terviseandmed (health data).

Põhjalikum kirjeldus asub metateenuste protokolli spetsifikatsioonis “X-Road: Service Metadata Protocol” aadressil: https://www.x-tee.ee/docs/live/xroad/pr-meta_x-road_service_metadata_protocol.html. Dokument kirjeldab meetodeid, mida X-tee liikmed saavad kasutada nende jaoks olemasolevate teenuste otsimiseks ja neid teenuseid kirjeldavate WSDL failide saamiseks. Protokolli spetsifikatsiooni lisades on toodud ka metateenuste WSDL kirjeldused.

4.2.3  X-tee haldusteenused

X-tee haldusteenused on teenused, mis tagavad X-tee  toimimise. Haldusteenuseid pakub X-tee keskuses asuv turvaserver ja haldusteenused võimaldavad hallata turvaservereid ning X-tee liikmeid. Turvaserverid pöörduvad teenuste poole konfiguratsioonimuudatuste registreerimiseks keskserveris.

Haldusteenused on:

  • clientReg – registreerib X-tee alamsüsteemi turvaserveri kliendina;
  • clientDeletion – eemaldab kliendi turvaserverist;
  • authCertReg – lisab autentimissertifikaadi turvaserverisse;
  • authCertDeletion – eemaldab autentimissertifikaadi turvaserverist.

Täpsem haldusteenuste kirjeldus asub dokumendis „X-road: Protocol for Management Services“ aadressil: https://www.x-tee.ee/docs/live/xroad/pr-mserv_x-road_protocol_for_management_services.html.

Kuna päris palju teenuseid on siiski veel vanas versioonis, siis võrdluseks tuuakse ära ka mõned metateenused, mis kehtisid X-tee versioonis 5, aga versioonis 6 enam ei kehti.

Asutuse infosüsteemi jaoks olid kättesaadavad alljärgnevad metateenused:

  • logOnly - teenus xrd.logOnly oli realiseeritud asutuse turvaserveris ning see päring logiti erandina otse asutuse turvaserveri päringu logisse (sslog) suunamata seda edasi ühelegi andmekogule. See võimaldas infosüsteemidel kasutada eriotstarbeliselt X-tee turvalist logimist.

Mõne andmekogu puhul võisid asutuse infosüsteemist olla kättesaadavad alljärgnevad metateenused:

  • getCharge - teenus andmekogu.getCharge (kus andmekogu on andmekogu nimi) võis vajadusel olla realiseeritud adapterserveris, kui teenuse osutaja küsis teenuste sooritamise eest muutuva hinnaga tasu. Teenus tagastas näidatud teenuse väljakutse tasu kasutaja jaoks, kelle isikukood oli päringu päises;
  • loadClassificator - teenus andmekogu.loadClassificator (kus andmekogu on andmekogu nimi) võis olla realiseeritud adapterserveris ning see väljastas valitud klassifikaatori sisu või selle alamosa;
  • legacyXYZ - teenused, mille nimi oli kujul andmekogu.legacyXYZ (kus andmekogu on andmekogu nimi ning XYZ suvaline antud teenust iseloomustav tekst), võisid olla realiseeritud adapterserveris ning neid teenuseid loeti pärandrakendusse sisenemise teenusteks. Pärandrakendusse sisenemise teenus võimaldas X-teega liitunud infosüsteemi autentimis- ja autoriseerimisvõimalusi kasutada teistes infosüsteemides.

Adapterserveris pidi olema realiseeritud alljärgnev metateenus:

  • listMethods - adapterserveri teenus system.listMethods tagastas loetelu kõigist adapterserveris pakutavatest meetoditest. See meetod oli mõeldud kasutamiseks ainult andmekogu oma turvaserverile.

Adapterserveris võis/pidi olema realiseeritud alljärgnev metateenus:

  • testSystem - adapterserveri teenus system.testSystem pidi olema realiseeritud adapterserveris, kui sooviti adapterserverit ja selle taga oleva süsteemi korrasolekut (andmebaas, jmt) perioodiliselt monitoorida. See meetod oli mõeldud kasutamiseks ainult andmekogu oma turvaserverile. 

Adapterserveris võisid olla realiseeritud alljärgnevad metateenused:

  • getCharge (vt kirjeldust ülalt);
  • loadClassificator (vt kirjeldust ülalt);
  • legacyXYZ (vt kirjeldust ülalt).

Last modified: Thursday, 7 February 2019, 3:40 PM