dokumendiregister.ee
OtsingAsutusedMCP
Otsing›Tervise- ja heaolu infosüsteemide keskus
Väljaminev kiriAvalik

Pöördumine

Tervise- ja heaolu infosüsteemide keskus · 21. juuli 2025
Viit
3-9/4652-1
Registreeritud
21. juuli 2025
Dokumendi liik
Väljaminev kiri
Adressaat
Telia Eesti AS, telia
Saabumis/saatmisviis
e-post
Funktsioon
3 Finantsarvestus ja asutuse varade haldus
Sari
3-9 Riigihankelepingud
Toimik
3-9/2024
Vastutaja
Epp Laanepõld (TEHIK, Äriteenuste osakond, Heaolu valdkond)

Failid

  • 📎Lisa 1 - Tehniline kirjeldus.pdf1549 KB
  • 📎Lisa 2 - Hankelepingu projekt (1).pdf83 KB
  • 📎Sotsiaalkindlustusameti infosu_steemide ma...pdf78 KB
  • 📎TK Lisa 1 - Teenuse pass SKAIS1.pdf362 KB
  • 📎TK Lisa 2 - Teenuse pass SKAIS2.pdf384 KB
  • 📎TK Lisa 3 - Teenuse pass STAR 2204.pdf519 KB
  • 📎TK Lisa 4 - TEHIK MFN 2024.pdf1128 KB

Sisu (failidest)

Lisa 1 - Tehniline kirjeldus Sisukord I. SKAIS1 arhitektuuridokument ................................................................................................... 2 1. Sissejuhatus ........................................................................................................................... 2 2. Süsteemi taust ....................................................................................................................... 2 3. SKAIS1 komponentdiagramm ............................................................................................... 2 4. Majutatavad teenuse komponendid ....................................................................................... 3 5. Välised liidestused .................................................................................................................. 3 6. Süsteemi arhitektuuris kasutatavad tehnoloogiad/tarkvarad.................................................. 3 7. Tehnoloogia maatriks ............................................................................................................ 4 8. Teenuse tehniline kirjeldus .................................................................................................... 4 9. Lokatsioonide näitlik loogiline arhitektuur ............................................................................. 8 II. SKAIS2 arhitektuuridokument ................................................................................................... 9 1. Sissejuhatus ........................................................................................................................... 9 2. Süsteemi taust ....................................................................................................................... 9 3. Paigaldusvaade ...................................................................................................................... 9 4. Rajadokument ...................................................................................................................... 14 5. Süsteemi arhitektuuris kasutatavad tehnoloogiad ................................................................ 21 6. Tehnoloogiate maatriks ........................................................................................................ 21 7. Tuleviku visioon .................................................................................................................... 23 8. Teenuse tehniline kirjeldus ................................................................................................... 23 III. STAR arhitektuuridokument .................................................................................................... 29 1. Sissejuhatus ......................................................................................................................... 29 2. Süsteemi taust ..................................................................................................................... 29 3. STAR komponentdiagramm ................................................................................................ 29 4. Majutatavad teenuse komponendid ..................................................................................... 30 5. Välised liidestused ................................................................................................................ 31 6. Süsteemi arhitektuuris kasutatavad tehnoloogiad/tarkvarad................................................ 31 7. STAR2 ametniku rakenduse arhitektuur – mikroteenused .................................................... 31 8. Teenuse tehniline kirjeldus ................................................................................................... 33 9. Nõuded mikroteenuste arhitektuuri tehnilisele ülesehitusele ............................................... 38 10. Toodangukeskkonna näitlik arhitektuur............................................................................ 38 IV. Lisad .....................................................................................................................................40 1. Tehnilise kirjelduse lisad on:..................................................................................................40 1 I. SKAIS1 arhitektuuridokument 1. Sissejuhatus 1.1. Antud dokument kirjeldab SKAIS1 infosüsteemi arhitektuuri, sisaldades antud süsteemi komponentide kirjeldust, nende omavahelist suhtlemist, paigaldusvaadet ning kirjeldust süsteemi ning teda ümbritsevate keskkondade vahel. 2. Süsteemi taust 2.1. Sotsiaalkindlustusameti infosüsteem (SKAIS) on riigi infosüsteemi kuuluv andmekogu, mida peetakse seadustest tulenevate Sotsiaalkindlustusameti avalike ülesannete täitmise eesmärgil. Täna kasutusel olev SKAIS koosneb tehniliselt neljast alaminfosüsteemist - SKAIS1, SKAIS2 ja EBS, mis moodustava omavahel kokkuseotuna ühe loogilise terviku ja mida vaadeldakse ühe tervikliku infosüsteemina. 2.2. SKAIS1 on liidestatud erinevate üleriigiliste infosüsteemidega. Andmebaasis on 3,4 miljoni isiku andmed. 2.3. Infosüsteemi SKAIS1 majutuskeskkond koosneb kolmest (test-, pre-live ja live keskkond) võrgu tasemele teineteisest lahusolevast keskkonnast. Kõiki keskkonnad on üles ehitatud sarnase arhitektuuri ja komponentidega va. testkeskkond, millel puudub vajadus teise dubleeriva õla järele. Allpool dokumendis on komponentide tasemel piisava detailsusega lahti kirjutatud SKAIS1 loogiline arhitektuuriline ülesehitus kirjeldamaks praeguse süsteemi toimimist ja võimaldamaks jätkusuutlikku arengut tulenevalt Sotsiaalkindlustusameti arenduse soovidest. 3. SKAIS1 komponentdiagramm 3.1. Järgnev skeem kirjeldab SKAIS1 infosüsteemis paiknevaid komponente ning nende vahelist suhtlust: 3.2. Veebiportaal (siseveeb) – Sotsiaalkindlustusameti ametnikele mõeldud veebirakendus, ligipääsetav ainult sisevõrgust. 3.3. MISP2 – Veebirakendus, sisaldab sealhulgas Teenuseosutaja portaali. 2 3.4. Turvaserver – Liidestus X-Teega (asub füüsiliselt TEHIKus). 3.5. Adapterserver – Vahekomponent x-tee turvaserveri ja andmebaasi vahel. 3.6. Andmebaas – Oracle Database Enterprise Edition, SKAIS1 andmestik. 4. Majutatavad teenuse komponendid 4.1. Andmebaas 4.1.1. Oracle Database 11g Enterprise Edition. 4.2. Veebiportaal (siseveeb) 4.2.1.Sotsiaalkindlustusameti ametnikele mõeldud veebirakendused 4.2.2. Tüüp: teenuseid pakkuv veebilehekülg 4.2.3.Kasutatud protokoll: sisevõrgu veebileht, https 4.2.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.3. Adapterserver 4.3.1. Kasutatakse x-tee teenuste vahendamiseks x-teele (ka MISP2 ja eesti.ee) 4.3.2.Tüüp: sünkroonne ja asünkroonne teenus; süsteemne taustprotsess 4.3.3. Kasutatud protokoll: integreeritud süsteemi osa 4.4. Digitempel 4.4.1.Füüsiline krüptopulk pangalinkides maksefailide allkirjastamiseks/krüpteerimiseks. 4.4.2. Tüüp: Daemon protsess 4.4.3.Kasutatud protokoll: jdbc; https; PKCS11 4.5. Pangalink 4.5.1. Pankadega andmevahetuse server. 4.5.2. Tüüp: Daemon protsess 4.5.3. Kasutused Swedbank ja SEB standard gateway tarkvara 5. Välised liidestused 5.1. Eesti.ee riigiportaal 5.1.1. Pakutakse 16 avalikku veebiteenust 5.2. Sertifitseerimiskeskus 5.2.1. digiallkirjade kehtivuskinnitus 5.2.2. Tüüp: sünkroonne teenus 5.3. EESSI 5.3.1. EL pädevate asutustevaheline andmevahetuskeskkond. 5.4. Pank 5.4.1. Väljamaksete edastamine panka 5.4.2. Tüüp: asünkroonne gateway 5.4.3. Kasutatud protokoll: SOAP 5.5. X-tee 5.5.1. Erinevate andmekogudega suhtlus 5.5.2.SKAIS1 poolt x-teel pakutavaid erinevaid teenuseid on 67; 5.5.3. SKAIS1 poolt x-teel tarbitavad erinevaid teenuseid on 82; 5.5.4.Tüüp: sünkroonne/asünkroonne 5.5.5. Kasutatud protokoll: SOAP 6. Süsteemi arhitektuuris kasutatavad tehnoloogiad/tarkvarad 6.1. Serverite operatsioonisüsteem 6.1.1. Serverite operatsioonisüsteemi tarkvarad peavad olema kaetud tootjapoolse tarkvaratoega lepingu perioodi vältel. 6.1.2.Operatsioonisüsteem: Red Hat Enterprise Linux 7 (RHEL) / Oracle Enterprise Linux 7 (OEL). 6.1.3. Vajalikud litsentsid tagab Täitja. 6.2. Apache HTTP Server Versioon: 2.4.37 3 6.2.1.Konfiguratsioon ja nõuded: SSL, ID-Kaardi sertifikaadi tuvastamine (ssl konfiguratsioon). 6.2.2. Operatsioonisüsteem: Red Hat Enterprise Linux 7 (RHEL) 6.2.3.Vajalikud SSL sertifikaadid tagab Tellija. 6.3. Apache Tomcat Versioon: 9.0.82 6.3.1. Konfiguratsioon ja nõuded: - 6.3.2.Operatsioonisüsteem: Red Hat Enterprise Linux 7 (RHEL) 6.4. Oracle Database Enterprise Edition 11g Versioon: Oracle Database 11g Enterprise Edition 11.2.0.4. 6.4.1.Konfiguratsioon ja nõuded: klasterdatud andmebaas. 6.4.2. Operatsioonisüsteem: Oracle Enterprise Linux 7 (OEL). 6.4.3.Andmebaasi eeldatav stardimaht (täna olemasolev andmestik) 1TB 6.4.4. Tellija tagab 8 (kaheksa) Oracle Database Enterprise CPU litsentsi. Süsteemi arengust tingitud vajaduse korral tagab lisalitsentsid Tellija. 6.5. Oracle Partitioning 6.5.1. Kasutatakse SKAIS1 Oracle andmebaasi partitsioneerimiseks. 6.5.2. Tellija tagab 8 (kaheksa) litsentsi. Süsteemi arengust tingitud vajaduse korral tagab lisa-litsentsid Tellija. 6.6. IBM Websphere Application Server Community Edition Versioon: 2.1.1.6 Veebiteenuste server. 6.7. Konfiguratsioon ja nõuded:- 6.8. Operatsioonisüsteem: CentOS 5.8 7. Tehnoloogia maatriks Apache Rakendus Java 8 SOAP Oracle 11g EE Märkus Tomcat 6.x Veebirakendused x x x SafeNet eToken x X-tee adapter x x x X-tee turvaserver x Andmebaas x 8. Teenuse tehniline kirjeldus 8.1. Nõuded serveriruumile ja infrastruktuurile 8.1.1. Täitja majutab Tellija infosüsteemi kahes füüsiliselt eraldi asukohas ja eraldi aadressidel paiknevas serveriruumis. Serveriruumid ja nendevahelised ühendused peavad paiknema Eesti Vabariigi territooriumil ja serveriruumide minimaalne nõutud geograafiline vahemaa on vähemalt 1 km. 8.1.2.Serveriruumid peavad olema spetsiaalselt ehitatud serverite majutuseks ja vastama E- ITS turbeastmele H ning standardile ANSI/TIA-942 (Telecommunications Infrastructure Standard for Data Centers) tasemele Tier 3, mööndusega, et varugeneraator ei pea olema dubleeritud. 8.1.3. Täitja tagab SKAIS1 infosüsteemile turvatud (SSL) välise andmesideühenduse kiirusega vähemalt 100 Mbps (megabitti sekundis) ja serveriruumide vahel füüsilise, turvatud (VPN) dubleeritud ühenduse kiirusega vähemalt 1 Gbps (gigabitti sekundis). 8.1.4.Andmesideühenduse (internetiteenuse) täitja peab olema Eesti Interneti SA poolt akrediteeritud. 8.1.5. Serverite ja serveriruumide vaheline ühenduse kiirus peab olema piisav, et tagada teenustaseme nõuded. Tõrke korral peab olema tagatud teenuste üle viimine teise serveriruumi teenuse nõuetele vastava aja jooksul. 4 8.1.6.Täitja serveriruumid peavad olema ühendatud tellija serveriruumidega läbi VPN ühenduse kiirusega vähemalt 1Gb/s. Tellija serveriruumid asuvad serverimajutuskeskustes kahes erinevas lokatsioonis Eesti Vabariigis. 8.1.7. Täitja peab kasutama riistvara, millel töötab ainult Tellija infosüsteem. Pakutaval riistvaral ei tohi töötada samal ajal kolmandate osapoolte infosüsteemid. Samuti ei tohi olla kolmandatel osapooltel ligipääse pakutavale riistvarale ja operatsioonisüsteemile. 8.2. SKAIS1 infosüsteemi majutus- ja tugiteenuste üldised (miinimum) nõuded 8.2.1.Täitja kohustub tagama SKAIS1 infosüsteemi kasutamise võimaluse veebikeskkonnas ning lepingu kehtivuse perioodil kindlustama keskkondade nõuetekohase (hankedokumendis ja teenusepassis kirjeldatud) funktsioneerimise. 8.2.2. Täitja tagab SKAIS1 infosüsteemi järgmised majutus- ja tugiteenused: 8.2.2.1. Serverite, võrgu- ja salvestusseadmete ressursid. 8.2.2.2. Andmebaaside administreerimine ja monitooring. 8.2.2.3. Infrastruktuuri administreerimine ja monitooring. 8.2.2.4. Muudatuste haldus. 8.2.2.5. Konsultatsioonid ja parendusettepanekud. 8.2.2.6. Muud ühekordsed tegevused ehk lisatööd. 8.2.2.7. Teenuse lõpetamisega seotud tööd lepingu lõppemisel. 8.2.3.Infosüsteem peab olema majutatud kahes serveriruumis põhimõttel primary site ja failover site. Täitja peab kirjeldama, mis vahenditega tagatakse vajaduse korral teenuste üle viimine teise serveriruumi vastavalt käideldavusnõuetele. 8.2.4. SKAIS1 infosüsteemi Oracle andmebaaside vaheliseks andmete reaalajas sünkroniseerimiseks peab Täitja kasutatama Oracle Data Guard tarkvara. Oracle Active Data Guard tarkvara võetakse kasutusele vajadusepõhiselt, mille kasutuselevõtu tingimused lepitakse eraldi kokku teenuseosutajaga. 8.2.5. Lepingu lõppedes kooskõlastatakse andmete uude majutuskeskkonda migreerimise ja seejärel hävitamise protsess Tellija ja Täitja vahel. Andmete ülekolimise ja hävitamise järgselt vormistab majutusteenuse osutaja akti, millega kinnitatakse, et andmed on hävitatud. 8.2.6. Teenuse osutaja vahetumisel vormistatakse andmete ülekolimise (migratsiooni) läbiviimise järgselt kolmepoolne üleandmis-vastuvõtu akt (andja, vastuvõtja, omanik). 8.2.7. Teenuse lõppedes, uude keskkonda andmete migratsiooni ettevalmistamine ja läbiviimisel abi osutamine (Täitja pädevuse ulatuses) on majutusteenuse osa ja ei ole eraldi tasustatav. 8.3. Nõuded andmete hoidmisele 8.3.1. Kõik infosüsteemis töödeldavad andmed (andmebaasis ja rakendusserverites) peavad paiknema keskses andmesalvestusmassiivis, mille andmemaht on lihtsasti juurde tellitav. Andmesalvestusmassiiv peab võimaldama andmete kloonimist töökeskkonnast töökeskkonna-eelsesse ja testkeskkonda. Andmesalvestusmassiivi mis tahes komponendi rike ei tohi põhjustada andmekadu. 8.3.2.Täitja peab maandama andmesalvestusmassiivi riknemise riski, mis võib Tellijale tähendada ulatuslikku teenusekatkestust. Täitja kirjeldab pakkumuses, kuidas ja mis vahenditega (sh SAN seadmed ja andmesalvestusmassiivid) on tagatud mainitud riskide maandamine. 8.4. X-tee turvaserverid 8.4.1.SKAIS1 infosüsteemis on kasutusel x-tee versioon 6 raamistik. 8.4.2. X-tee turvaserverite töökeskkonna, toodangueelse keskkonna ja testkeskkonna tagab Tellija (asuvad Tellija juures). 8.4.3.Infosüsteemi osade ühtlustamise ja edasiarenduste raames peab Täitjal olema valmidus x-tee turvaserveri majutus- ja haldusteenuse osutamiseks sarnaselt SKAIS2 alaminfosüsteemile. 5 8.5. Muudatuste haldus 8.5.1. Arendusmuudatuste paigalduse õigus on ainult Täitjal, kui ei lepita kokku teisiti. 8.5.2. Arendusmuudatused valmistab ette Arendaja ja edastab paketeeritult koos paigaldusjuhendiga paigaldamiseks toodangu- ja toodangueelsesse keskkonda. Paigalduspakettide, juhendite jm vajaliku informatsiooni edastamiseks ja paigaldustega seotud tegevuste dokumenteerimiseks, kasutatakse Tellija tööde/projektide juhtimise keskkonda Jira. 8.5.3. Teenusetäitja paigaldab arendusmuudatusi lepingu raames vastavalt teenuse passile. 8.5.4. Toodangukeskkonda ja toodangueelsesse keskkonda tehakse üldjuhul kuni 4 arendusmuudatuse tarnet ja 4 veaparandustarnet kuus. Testkeskkonda tehakse üldjuhul kuni 12 arendusmuudatuse tarnet ja 12 veaparandustarnet kuus. Arendusmuudatusi töökeskkonda viiakse sisse väljaspool aktiivset tööaega. 8.5.5.Teenusetäitja peab vastavalt tellimusele käivitama parandusskripte vigade tuvastamiseks ja parandamiseks. 8.5.6. Arendusmuudatuste paigalduse aja kooskõlastab Täitja Tellijaga. 8.5.7. Täitja poolt arendusmuudatuse paigalduse ebaõnnestumisel vastutab Täitja süsteemi taastamise (rollback) eest. 8.5.8. Täitja uuendab toodangueelse ja testkeskkonna andmeid toodangukeskkonna andmetega Tellija tellimusel kui tarnejuhend seda ette näeb, kuid mitte rohkem kui punktis 10.5.4 kirjeldatud tarnete arv. 8.5.9. Teenusetäitja tagab Tellija tellimisel arenduspartneritele ligipääsu test- ja toodangueelsele keskkonnale (andmebaasile, rakendusserverile) 2 tööpäeva jooksul. 8.5.10. Teenusetäitja tagab Tellija tellimisel arenduspartneritele ligipääsu sulgemise test- ja toodangueelsele keskkonnale esimesel võimalusel, kuid mitte hiljem kui 2 tööpäeva jooksul. 8.5.11. Täitja peab kindlustama Tellija tellimisel (andme)halduritele / rakenduse administraatoritele lugemisõigustes (read only) ligipääsud kõikide SKAIS2 keskkondade serverite operatsioonisüsteemi konfiguratsioonifailidele ja andmebaasidele. 8.6. Varundamine ja teenuse taastamine 8.6.1.Täitja teeb majutuskeskkonnas olevatest süsteemidest regulaarselt varukoopiaid selliselt, et oleks tagatud teenuse passis sätestatud tingimuste täitmine. Täitja peab pakkumises kirjeldama, et milliste vahendite ja meetoditega tehakse varukoopiaid. 8.6.2. Varukoopiaid tehakse rakendusi seiskamata st, et Tellija infosüsteemide käideldavus ei ole varukoopiate tegemise ajal mõjutatud. Varundust teostatakse väljaspool infosüsteemi tööaega. 8.6.3.Varukoopiad tuleb salvestada töökeskkonnast eraldi asuvatele andmekandjatele, mis asuvad erinevas füüsilises lokatsioonis. Varukoopiad ja nende allika vaheline andmevahetus peab olema krüpteeritud. 8.6.4. Täitja on kohustatud hoidma töökeskkonna varundatud andmeid järgnevalt: 8.6.4.1. Vähemalt kahe viimase kuukoopia. 8.6.4.2. Vähemalt neli viimast nädalakoopiat. 8.6.4.3. Vähemalt viis viimast tööpäevakoopiat. 8.6.5. Kuukoopiad on planeeritud kopeerida täiendavalt andmesaatkonda. Ajakava ning täpne tehniline lahendus töötatakse välja ja realiseeritakse koos eduka Täitjaga töö käigus 2020/21.aastal. 8.6.6. Andmekadu põhjustavat intsidenti käsitletakse kui erakorralist intsidenti. Erakorralise intsidendi korral on lubatud teenuse järjestikune seisak kuni 4 tundi ja summaarne seisak kuni 4 tundi nädalas ja kuni 6 tundi kalendrikuus. Pärast intsidendi lahendamist ja/või andmete taastamist esitab Täitja Tellijale detailse raporti, kus toob välja intsidendi põhjuse, mis põhjustas andmekadu ning meetmed selliste juhtumite vältimiseks või esinemise tõenäosuse vähendamiseks tulevikus. 6 8.6.7. Täitja töötab pärast iga keskkonna käivitamist ühe kuu jooksul välja vastava keskkonna taasteplaani ja esitab selle Tellijale ülevaatamiseks ja kinnitamiseks. Taasteplaan peab sisaldama tegevuskava ja süsteemi üldist arhitektuuri kirjeldust visuaalsel kujul. Olulised infrastruktuuri komponendid (serverid, võrguseadmed jne) peavad olema kirjalikult lahti seletatud. 8.6.8. Täitja testib taasteplaani ajakohasust, kui toimub muudatus Tellija infosüsteemiga seotud infrastruktuuris, kuid mitte harvemini kui üks kord aastas. Täitja kooskõlastab Tellijaga testi läbiviimise aja ning esitab Tellijale pärast testi läbiviimist raporti, kus märgib ära taasteplaani vastavuse tegelikule olukorrale ja plaanist leitud puudused. Puudused tuleb kõrvaldada Tellijaga kokkuleppel mõistliku aja jooksul ning seejärel korraldada uus taasteplaani test. 8.7. Monitooring 8.7.1. Täitja tagab tsentraliseeritud tehnilise toe teenuse, mis on avatud 24 tundi ööpäevas ja seitse päeva nädalas, mille kaudu sooritatakse mitmesuguseid süsteemiga seotud järelevalve, muudatuste ja veahalduse menetlustoiminguid. 8.7.2. Tehnilise toe teenuseid osutatakse osana majutusteenustest, kus kõik süsteemihoiatused saadetakse tsentraliseeritud 24 tundi toimivale tehnilisele toele (sh võrgu, serveri ja rakenduse hoiatused). 8.7.3. Kõik keskkonnad peavad olema Täitja poolt monitooritud kogu lepinguperioodi vältel. 8.7.4. Täitja võimaldab Tellijale ja Tellija poolt nimetatud arendajale juurdepääsu monitooringuinfole või edastab monitooringuteated Tellija poolt etteantud meiliaadressile. 8.7.5. Täitja installeerib vajadusel või Tellija palvel serveritesse täiendavad monitooringuagendid, mis koguvad infot serverite ja rakenduste seisundi kohta. Tellijal on kasutusel monitooringu süsteem Prometheus ja Grafana. 8.7.6. Täitja monitoorib serverites asuvate infosüsteemide tööd vähemalt järgmiste komponentide osas: 8.7.6.1. Andmesideühenduse olemasolu Tellija serverite ja infosüsteemide vahel. 8.7.6.2. Serverite riistvaraliste komponentide töökorras olek. 8.7.6.3. Serverite protsessorite ja mälukasutus. 8.7.6.4. Kõvaketaste täituvus. 8.7.6.5. Süsteemi load (UNIX süsteemide puhul). 8.7.6.6. Andmebaasisüsteemi töökorras olek. 8.7.6.7. Andmebaasile eraldatud ressursside olemasolu. 8.7.6.8. Varukoopiate tegemise õnnestumine. 8.7.6.9. Monitooringusüsteemi töökorras olek. 8.7.7. SKAIS1 infosüsteemi rakenduste monitooring 8.7.7.1. Täitja poolset SKAIS1 rakenduse monitooringut ei nõuta. Täitjal peab olema valmisolek integreerida oma keskkonda Tellija poolt kasututavad rakenduse monitooringu vahendid (agendid vms). 8.7.8. Teenuse tehniline tugi 8.7.8.1. Täitja peab tagama kasutajatoe (ühtne kontaktpunkt, telefoni number, e- mail ja/või avalik portaal) vastavalt Teenuse passis toodud nõuetele. 8.7.8.2. Täitja peab teavitama Tellijat kriitilistest ja keskmise taseme vigadest koheselt ja asuma teenuse nõutud tingimustele vastavust taastama. 8.7.8.3. Kui tõrget ei ole võimalik teenuse passis nõutud aja jooksul lahendada, peab Täitja esitama põhjendused ja lahendusettepanekud. 8.7.8.4. Kriitilise taseme tõrkeks loetakse olukorda, kus SKAIS1 toodangukeskkonna tervikuna või oluliste komponentide, s.h andmevahetused teiste infosüsteemidega, kasutamine ei ole võimalik. 8.7.8.5. Keskmise taseme tõrkeks loetakse olukorda, kus SKAIS1 toodangukeskkonna kasutamine on oluliselt häiritud. 7 8.7.8.6. Madala taseme tõrkeks loetakse olukorda, kus SKAIS1 toodangukeskkonna kasutamine on võimalik, kuid on häiritud. 8.7.9. Aruandlus ja infovahetus 8.7.9.1. Täitja esitab majutusteenuse osutamise kohta igakuiselt ülevaate eelmise kuu kohta, mis sisaldab vähemalt järgmist informatsiooni: 8.7.9.1.1. Süsteemi komponentide käideldavus vastavalt teenuste passi nõuetele. 8.7.9.1.2. Perioodi vältel toimunud intsidendid koos algus- ja lõpuajaga, juurpõhjusega (kui on selgunud) ning kirjeldusega, kuidas neid edaspidi vältida. 8.7.9.1.3. Perioodi vältel tehtud plaanilised tööd. 8.7.9.1.4. Muudatuste logi. 8.7.9.1.5. Tellija poolt perioodi jooksul esitatud pöördumiste staatus, mis sisaldab ka lahendamata pöördumisi eelmistest perioodidest. 8.7.9.1.6. Täitja poolsed ettepanekud infosüsteemi ja majutuse parendamiseks ning teostamiskava. 8.7.9.2. Aruandlus peab olema Tellija kontaktisikutele kättesaadavaks tehtud veebi kaudu või e-kirja teel. 8.7.9.3. Täitja peab võimaldama Tellijal tellida tellimustööna täiendava tasu eest ühekordseid raporteid nt andmebaasi detailseid koormusraporteid. 8.7.9.4. Täitja ja Tellija vaheline töökeel on eesti keel. 9. Lokatsioonide näitlik loogiline arhitektuur 8 II. SKAIS2 arhitektuuridokument 1. Sissejuhatus 1.1. Antud dokument kirjeldab juba valminud SKAIS2 infosüsteemi arhitektuuri, sisaldades antud süsteemi komponentide kirjeldust, omavahelist suhtlemist ja suhestumist, paigaldusvaadet ning kirjeldust loodava süsteemi ning teda ümbritsevate keskkondade vahel. 2. Süsteemi taust 2.1. Sotsiaalkindlustusameti infosüsteem (SKAIS2) on riigi infosüsteemi kuuluv andmekogu. Aastaks 2018 oli välja arendatud elatisabi ja riigile üle läinud elatisnõuete sissenõudmise; puude raskusastme ja puudest tulenevate lisakulude ning püsiva töövõimetuse tuvastamise funktsionaalsus. 2.2. Aastatel 2018–2020 lisandusid SKAIS2 infosüsteemi Perehüvitiste pakkumuste sündmuspõhine teenus, Tehniliste abivahendite taotlemise ja soodustingimustel eraldamise infosüsteem, Isa täiendava vanemahüvitise puhkuse planeerimise võimalus, Vanemahüvitiste- ning Kogumispensioni täiendavate sissemaksete funktsionaalsus. 2.3. Aastatel 2021-2023 lisandus Pensioniõigusliku staaži andmete kogumise teenus ja uuenesid Digitembeldamise -, Dokumentide haldamise -, Rahvastikuregistriga liidestumise – ja Arstliku-ekspertiisi teenused. 2.4. SKAIS2 on liidestatud erinevate üleriigiliste infosüsteemidega. Süsteemis on 1,6 miljoni isiku andmed. 3. Paigaldusvaade 3.1. Järgnevalt kirjeldatakse süsteemi komponentide paigaldust ja omavahelist suhtlust. Infosüsteem on laias laastus jagatud kaheks: 3.1.1. sisevõrgus paiknevad süsteemi osad 3.1.2. välisvõrgust ligipääsetavad süsteemi osad 3.2. Välisvõrgus asub Sotsiaalkindlustusameti iseteeninduse rakendus, mis suhtleb sisevõrgus olevate komponentidega üle standardse HTTPS protokolli. Ligipääs sisevõrgus olevatele komponentidele on määratud välisvõrgus asuva serveri(te) IP aadressi(de) näol. 3.3. Rakendusserveritele (Apache Tomcat1) paigaldatud komponendid (Ametniku portaal) on paljundatavad (hetkel kasutatav sessiooni sticky-session asendub tulevikus Redise2 andmebaasil põhineva sessiooni haldusega). Süsteem võimaldab lisada N arv lisa servereid, koormust juhib rakendusserverite ette paigaldatud koormusjaotur Apache3 mod_proxy4. 3.4. Uuemad (pärast 2018 arendatud) komponendid on arendatud mikroteenuste5 põhimõtteid jälgides ning väldivad kasutaja sessiooni oleku hoidmist rakendusserveris. Valitud lahendus võimaldab rakenduse komponente paljundada ja lõppkasutajale märkamatult (katkestuste vabalt) vahetada. 3.5. Andmebaasi ühendusi hallatakse rakendusesisese Connection Pooli abil. Infosüsteem töötab läbivalt UTF-8 kodeeringus. 3.6. Süsteemi aluseks olev andmebaas on paigaldatud kahte erinevasse serveriruumi (active/passive site), kus ainult üks on aktiivses olekus. 1 Apache Tomcat — http://tomcat.apache.org/ 2 Redis — https://redis.io/ 3 Apache HTTP Server — https://httpd.apache.org/ 4 mod_proxy — https://httpd.apache.org/docs/2.4/mod/mod_proxy.html 5 Mikroteenuste arhitektuur — https://microservices.io/ 9 3.7. Java rakendused on klasterdatud 2 aktiivse õlga (node) vahel, mis on paigutatud erinevatesse serveriruumidesse (st. 1 õlg serveriruumi peale). 3.8. SKAIS2 integreerub erinevate väliste infosüsteemidega: 3.8.1. infovahetus teiste riigi andmekogudega tuimub üle X-tee6 kasutades HTTP(S) REST ja SOAP 7 protokolli. 3.8.2.Infovahetus SKAIS1-ga toimub üle andmebaasiühenduste (JDBC ja DBLink8) 3.8.3. Euroopa Liidu ühtse sotsiaalkindlustuse infovahetus (EESSI9) käib läbi Sotsiaalkindlustusameti RINA rakenduse kasutades HTTP protokolli, vahetades REST sõnumeid. 3.8.4.Väljamakseid teostatakse kasutades Eesti pankade poolt pakutavaid teenuseid. 3.8.5. Ametniku portaal – Sotsiaalkindlustusameti ametnikele mõeldud veebirakendus. 6 X-tee andmevahetuse platform — https://www.x-tee.ee/home 7 SOAP protokoll — https://www.w3.org/TR/soap/ 8 Oracle Database Links: https://docs.oracle.com/cd/E18283_01/server.112/e17120/ds_concepts002.htm 9 Electronic Exchange of Social Security Information — https://ec.europa.eu/social/main.jsp?catId=869&langId=en 10 3.8.6.Komposiit - ajutine veebirakendus, mis pakendab endas erinevate valdkondade mikroteenuseid (failihaldus, finants (arvestus), iseteenindus, isik, kogumispension, maksude deklareerimine, otsus/hüvitis, pakkumus, perehüvitis, parameeter, sotsiaalmaksu hüvitamine, teavitused, tööülesanded, universaalmenetlus, vanemahüvitis, x-tee väljuvad päringud). Ajutine lahendus kuni toodangus võetakse kasutusele Kubernetes10. 3.8.7. RINA Facade – EESSI RINA liidestus. Integratsiooni komponent. Vahendab EESSI RINA ja SKAIS2 vahelist suhtlust üleeuroopaliste sotsiaalkindlustuse juhtumite menetlemiseks SKAIS2 kaudu. Eraldi käivitatav Java (Spring Boot11) rakendus. 3.8.8.Abivahendid – Tehniliste abivahendite ärimoodul. Haldab riigi poolt toetatud, soodustingimustel teostatud, abivahendite tehingute registreerimisi ja neist tulenevaid äriprotsesse. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.9.Arestid – Kolmandate osapoolte (kohtutäiturid) poolt Sotsiaalkindlustusametile edastatud arestiaktide alusel kinnipidamiste teostamine ja haldus. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.10. Elatisabi – Elatisabi teenuse ärimoodul. Haldab riigi poolt pakutavaid Elatisabi teenuseid ja neist tulenevaid äriprotsesse. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.11. Kindlustuslepingud – Kindlustusandjate poolt riigile üleantud pensioni II samba lepingute haldusmoodul. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.12. Kliendipöördumised – Kliendipöördumiste ja -suhtluse ärimoodul. Kliendipöördumiste ärimoodulis hallatakse kogu kliendiga toimuvat suhtlust, kus suhtluse algatajaks võib olla nii klient kui ka Sotsiaalkindlustusameti töötaja. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.13. RFK klassifikaator – Rahvusvahelise funktsioneerimisvõime, vaeguste ja tervise klassifikatsiooni (ICF12) haldusmoodul. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.14. Ekspertarsti hinnang – Sotsiaaltoetuste aluseks olev, isiku puude - ja toimetuleku hindamise moodul. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.15. Finants facade – SKAIS1s määratud pensionite, toetuste ja hüvitiste finantsarvestuse teostamise integratsioonimoodul. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.16. Rahvastikuregistri andmete töötlemine – Rahvastikuregistriga liidestumise ja rahvastikuregistrist saadud andmete töölemise teenus. Vastutab rahvastrikuregistriga liidestuste eest (sh. Isikuandmete muudatused/ Isiku detailandmed/ Isiku viibimiskoht/ Isiku dokumendid) . Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.17. Dokumentide hoidla – SKAIS2 põhiteenus isikuga seotud dokumentide hoidmiseks. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.18. Pensioniõiguslik staaž – Pensioni määramiseks alusandmete, Pensioniõiguslike staažide, kogumise ja haldamise moodul. Eraldi käivitatav Java (Spring Boot) rakendus. 10 Kubernetes konteinerite orkestratsioon — https://kubernetes.io/ 11 Spring Boot Java rakenduste raamistik — https://spring.io/projects/spring-boot 12 ICF (International Classification of Functioning, Disability and Health) - https://www.who.int/standards/classifications/international-classification-of-functioning-disability-and-health 11 3.8.19. Arstlik-ekspertiis küsimustik – Arstliku-ekpertiisi taotluse juures kasutatav küsimustiku haldamise moodul. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.20. Arstlik-ekspertiis menetlus – Arstliku-ekpertiisi menetlemise moodul (hetkel kasutatakse puudeotsuste edastamiseks STAR-i süsteemi). Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.21. Arstlik-ekspertiis taotlus – Arstliku-ekspertiisi taotlemise moodul. Antud mooduli kaudu saavad kodanikud esitada iseteenindusest puude hindamise ja sotsiaaltoetuste taotlusi. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.22. Protsessimootor - kasutatakse virtuaalmasinas eraldiseisva protsessina (jar). Teostab süsteemis defineeritud ja järjekorda seatud taustaprotsesside jooksutamist. Jõudluse tõstmiseks on võimalik paigaldada mitu protsessimootorit. 3.8.23. Dokumendi generaator - vahend (Oracle BI Publisher13) menetlusprotsesside käigus koostatavate dokumentide koostamiseks ja automaatseks genereerimiseks. Liidestatud teiste süsteemidega kasutades Oracle BI Publisher Java Integration API't. BI Publisheri kasutus on tasapisi asendumas ärimoodulite endi sees genereeritud dokumentidega. 3.8.24. X-tee turvaserver – X-tee liidestus. Installeeritud vastavalt turvaserveri installeerimisjuhendile: http://x-road.ee/docs/est/turvaserveri_kasutusjuhend.pdf. 3.8.25. X-tee andmejälgija – X-tee andmejälgija liidestus. Installeeritud vastavalt andmejälgija paigaldamise juhendile: https://github.com/e- gov/AJ/blob/master/doc/Rakendusjuhend.md#tarkvara-paigaldamine 3.8.26. HSM - (hardware security module) riistvaraline turvamoodul PKI infrastruktuuris turvaliselt saladuste krüpteerimiseks ja signatuuride kinnitamiseks. 3.8.27. X-tee teenusetäitja - Installeeritud eraldiseisvana virtuaalmasinasse (Apache + Tomcat). Vahendab SKAIS2 poolt pakutavaid x-tee teenuseid välistele süsteemidele, mis on loodud kasutades SOAP protokolli. Liidestus X-Tee turvaserveriga, pakub andmeid. 3.8.28. X-road teenusetäitja - Vahendab SKAIS2 poolt pakutavaid x-tee teenuseid välistele süsteemidele, mis on loodud kasutades REST protokolli. Liidestus X-Tee turvaserveriga, pakub andmeid. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.29. Abivahendite X-tee teenusetäitja – Installeeritud eraldiseisvana virtuaalmasinasse Java (Spring Boot) rakendusena. Vahendab SKAIS2 pakutavaid abivahendite X-tee teenuste otspunkte. Liidestus X-tee turvaserveriga, pakub andmeid. 3.8.30. "Tuum" Andmebaas – Oracle Database 19c Enterprise Edition, hoitakse ja töödeldakse kogu SKAIS2 andmestikku. Kasutusel 36 schemat (skais_assignment, skais_benefit, skais_client_inquiry, skais_dashboard, skais_disability_application, skais_disability_proceeding, skais_disability_question, skais_doctor_assessment, skais_document_management, skais_finance, skais_fin_facade, skais_funded_pension, skais_funded_pension_payments, skais_isik, skais_maintenance_allowance, skais_notification, skais_pakkumus, skais_parental_benefit, skais_pension_seniority, skais_perehyvitis, skais_population_reg_proc, skais_proceeding, skais_rfk_classifier, skais_rinafacade, skais_signing, skais_social_tax_benefit, skais_system, 13 Oracle Business Intelligence Publisher — https://www.oracle.com/middleware/technologies/bi-publisher.html 12 skais_tax_declaration, skais_technicalaid, skais_technicalaidxroad, skais_withholdings, skais_xroad, skais_xroad_provider, skais2, skais2sys, skais2valine). 3.8.31. Failihoidla – Oracle Database 19c Enterprise Editon hoidmaks äriprotsesside poolt loodud ja süsteemi kasutajate poolt üleslaetud dokumente. 3.8.32. Dokumentide arhivaator – Daemon komponent (jar) operatiivbaasi salvestatud dokumentide liigutamiseks arhiivi (failihoidla andmebaasi). 3.8.33. Digitempli teenus – Äriteenuste poolt loodud otsuste ja maskefailide allkirjastamise (digitembeldamise) teenus. Allkirjastatud failid saavad asutuse digitempli ASiCe formaadis. Eraldi käivitatav Java (Spring Boot) rakendus. 3.8.34. ERP - Oracle E-Business Suite14 paigaldatuna eraldi serverile. Haldab/töötleb SKAIS2 raamatupidamisinfot (maksed panka või muudesse maksekanalitesse (kojukanne), pangast tagasiside jne). ERPi taga on erinevad liidestused pankadega. SKAIS2 integratsioon ERPiga on tehtud läbi vahetabelite. Skais2 lisab read tabelitesse, kus ERP need üles korjab. Pärast tagasisidet pangast kirjutab ERP read tabelisse, kus SKAIS2 need jälle üles korjab ja oma ärilistesse tabelitesse laiali salvestab. 3.8.35. Swedbank GW – ERP Liidestus Swedbank’i maksete liidesega. Vahendab väljamaksete infot ERP ja Swedbank’i vahel. 14 Oracle E-Business Suite — https://www.oracle.com/applications/ebusiness/ 13 4. Rajadokument 14 4.1. "Tuum" Andmebaas 4.1.1. Oracle Database 19c Enterprise Edition. 4.1.2.Tüüp: Andmebaas 4.1.3. Kasutatud protokoll: JDBC 4.1.4.Käideldavus: kõrgkäideldav active-passive klaster kahel õlal. 4.2. Iseteeninduse portaal (brauseri rakendus) 4.2.1.Sotsiaalkindlustusameti klientidele mõeldud veebirakendus. 4.2.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.2.3.Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST). 4.2.4. Käideldavus: Brauseris töötav kasutajaliides. 4.3. Ametniku portaal 4.3.1. Sotsiaalkindlustusameti ametnikele mõeldud veebirakendus. 4.3.2.Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.3.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST) 4.3.4.Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.4. Elatisabi 4.4.1.Elatisabi teenuse ärimoodul 4.4.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.4.3.Kasutatud protokoll: HTTP(S) REST, Angular. 4.4.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.5. Kliendipöördumised 4.5.1. Kliendipöördumiste ja -suhtluse ärimoodul 4.5.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.5.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST) 4.5.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.6. Kindlustuslepingud 4.6.1.Kindlustusandjate poolt riigile üleantud pensioni II samba lepingute haldusmoodul 4.6.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.6.3.Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST) 4.6.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.7. Arestid 4.7.1. Arestide (kinnipidamiste) teostamise ja halduse ärimoodul 4.7.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.7.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST) 4.7.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.8. RFK klassifikaator 4.8.1.Rahvusvahelise funktsioneerimisvõime, vaeguste ja tervise klassifikatsiooni haldusmoodul. 4.8.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.8.3.Kasutatud protokoll: AMQP, HTTP(S) (REST) 4.8.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.9. Ekspertarsti hinnang 4.9.1.Isiku puude - ja toimetuleku hindamise ärimoodul 4.9.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.9.3.Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST) 4.9.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.10. Finants facade 4.10.1. SKAIS1s määratud pensionite, toetuste ja hüvitiste finantsarvestuse teostamise integratsioonimoodul. 4.10.2. Tüüp: sisemisi teenuseid pakkuv veebirakendus. 15 4.10.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST) 4.10.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.11.Komposiit 4.11.1. Ajutine mikroteenuse komponentide konteiner (Apache Tomcat) 4.11.2. Tüüp: Avalike ja sisevõrgu teenuseid pakkuvate rakenduste konteiner. 4.11.3. Kasutatud protokoll: HTTP(S) (REST) 4.12. SiGa/SiVa proxy 4.12.1. TEHIKu sisene proxy teenus, mis vahendab RIA poolt pakutud SiGa/SiVa teenust. 4.12.2. Tüüp: sisemisi teenuseid pakkuv veebirakendus. 4.12.3. Kasutatud protokoll: HTTP(S) (REST) 4.12.4. Käideldavus: k8s klastrisse ja koormusjaoturi taha paigaldatud mikroteenus. 4.13.Protsessimootor 4.13.1. Kasutuses eraldiseisva protsessina virtuaalmasinas täitmaks süsteemis defineeritud ja järjekorda seatud taustaprotsesse või üle Oracle AQ saabunud sõnumeid. Töötab eraldiseisva(te) protsessi(de)na Daemon protsesside jooksutamiseks. 4.13.2. Tüüp: sünkroonne ja asünkroonne teenus; süsteemne taustaprotsess. 4.13.3. Kasutatud protokoll: AMQP, HTTP(S) (REST), JDBC 4.14. Digitempli teenus 4.14.1. Digitembeldamise teenus, digitembeldab etteantud faile, lisab failid failihoidlasse. Sisemiselt kasutab digitembeldamise APIt. Signeerimiseks kasutab majutuskohas olevat võrgu HSM seadet. 4.14.2. Tüüp: sisemisi teenuseid pakkuv veebirakendus. 4.14.3. Kasutatud protokoll: AMQP, JDBC 4.14.4. Käideldavus: klastrisse paigaldatud mikroteenus 4.15. Failihoidla 4.15.1. Süsteem (Andmebaas + Java API) hoidmaks dokumendi generaatori poolt loodud, süsteemi kasutajate poolt üleslaetud ja protsessi mootori poolt loodud dokumente. Paigaldatud eraldiseisvasse virtuaalmasinasse. 4.15.2. Tüüp: Teenus (API), Andmebaas. 4.15.3. Kasutatud protokoll: JDBC; HTTPS 4.16. Rahvastikuregistri andmete töötlemine 4.16.1. Rahvastikuregistri andmete pärimise ja töötlemise teenus 4.16.2. Tüüp: sisemisi teenuseid pakkuv veebirakendus. 4.16.3. Kasutatud protokoll: AMQP, HTTP(S) (REST), JDBC 4.16.4. Käideldavus: klastrisse paigaldatud mikroteenus 4.17. Dokumentide hoidla 4.17.1. Isikuga seotud dokumentide haldamise ärimoodul 4.17.2. Tüüp: avalikke ja sisemisi teenuseid pakkuv veebirakendus. 4.17.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST), JDBC 4.17.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.18. Pensioniõiguslik staaž 4.18.1. Pensioniõiguslike staažide, kogumise ja haldamise ärimoodul 4.18.2. Tüüp: avalikke ja sisemisi teenuseid pakkuv veebirakendus. 4.18.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST), JDBC 4.18.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.19. Arstlik-ekspertiis küsimustik 4.19.1. Arstliku-ekpertiisi taotluse juures kasutatav küsimustiku haldamise moodul 4.19.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.19.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST),JDBC 4.19.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 16 4.20. Arstlik-ekspertiis menetlus 4.20.1. Arstliku-ekspertiisi menetlemise ärimoodul 4.20.2. Tüüp: sisemisi teenuseid pakkuv veebirakendus. 4.20.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST), JDBC 4.20.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.21. Arstlik-ekspertiis taotlus 4.21.1. Puude tuvastamise ja sotsiaaltoetuste taotlemise ärimoodul 4.21.2. Tüüp: avalikke teenuseid pakkuv veebirakendus. 4.21.3. Kasutatud protokoll: AJP, AMQP, HTTP(S) (REST), JDBC 4.21.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.22. Dokumendi generaator 4.22.1. Vahend menetlusprotsesside käigus koostatavate dokumentide genereerimiseks. Liidestatakse teiste süsteemidega kasutades Oracle BI Publisher Java Integration API'sid. 4.22.2. Tüüp: sünkroonsed teenused API tarbijatele, veebileht administreerimiseks. 4.22.3. Vastaspool: liidese tarbijaks on Ametniku portaal ja protsessimootor. 4.22.4. Kasutatud protokoll: Oracle BI Publisheri põhine, ühenduse hoidmiseks kasutatakse Oracle poolt pakutud APIt. Port millelt ühendus luuakse, konfigureeritav süsteemis (by default 7001). 4.22.5. Lisa: Rakendus vajab oma repositooriumi hoidmiseks andmebaasi. 4.23. ERP 4.23.1. Oracle E-Business Suite paigaldatuna eraldi serverile. Haldab/töötleb SKAIS2 raamatupidamisinfot—maksed panka või muudesse maksekanalitesse (kojukanne), pangast tagasiside jne. SKAIS2 integratsioon ERPiga on teostatud läbi vahetabelite. SKAIS2 lisab read tabelitesse, kus ERP need üles korjab. Pärast tagasisidet pangast kirjutab ERP read tabelisse, kus SKAIS2 need üles korjab ja oma ärilistesse tabelitesse laiali salvestab. 4.24. Turvaserver 4.24.1. X-tee turvaserver, vajalik X-tee kaudu andmete vahetamiseks. 4.24.2. Kasutatud protokollid: HTTP(S) REST ja SOAP. 4.25. Dokumentide arhiveerija 4.25.1. Daemon protsess, eesmärgiga arhiveerida operatiivbaasi salvestatud dokumente failihoidlasse. 4.25.2. Tüüp: Deemon protsess. 4.25.3. Kasutatud protokoll: JDBC. 4.26. Pank 4.26.1. Väljamaksete edastamine panka. 4.26.2. Tüüp: asünkroonne gateway. 4.26.3. Kasutatud protokoll: SOAP. 4.27. X-tee 4.27.1. Suhtlus erinevate andmekogudega. 4.27.2. SKAIS2 poolt pakutavad teenused: Teenus Selgitus EAFmakseteatised Teenus võtab kohtutäituritelt vastu täitemenetluseaegse elatisabi maksekorraldused. EAFmakseraport Teenus väljastab kohtutäituritele täitemenetluseaegse elatisabi maksekorralduste staatused. Info selle kohta, kas Sotsiaalkindlustusameti poolt on maksekorralduse põhjal väljamakse teinud või tagastab veateate, miks maksekorraldust ei ole võimalik täita. 17 Teenus Selgitus TKToovoimPuueHyvitised Teenus väljastab Töötukassale päritava isiku kohta info, milliseid hüvitisi ja töövõimetusi on määratud isikule Sotsiaalkindlustusametis. Lisaks väljastatakse ka rahaliste väljamaksete, kinnipidamiste ja tulumaksu info. TKToovoimPuueHyvitisedMassTeenus Teenus võtab vastu Töötukassast isikukoodide loetelu, kelle kohta Töötukassa soovib hüvitiste infot. TKToovoimPuueHyvitisedMassTeenusVastus Teenus väljastab Töötukassale päritavate isikute kohta info, milliseid hüvitisi ja töövõimetusi on määratud isikule Sotsiaalkindlustusametis TVHTaotlusYksUks Teenus võtab vastu Töötukassast puude määramise taotluse andmed. calculateContributionV2 Arvutab etteantud abivahendite müügi tehingu ridadele riigi poolt teenuseosutajale hüvitatavate osamaksete suurused. calculateIsoLimitParametersV2 Arvutab isikule müüdava abivahendi ISO koodi alusel talle määratud abivahendi soodustuse kasutamise piirmäärad. cancelTransactionRowV2 Tühistab eelnevalt registreeritud abivahendi müügi- või renditehingu. changeContribution Teenus abivahendite teenuseosutajatele osamaksete muutmiseks checkJustificationV2 Kontrollib isiku õigustatust soodustingimusel abivahendi soetamiseks. correctTransaction Teenus abivahendite teenuseosutajatele tehingute korrigeerimiseks. courierDelivery Teenus väljastab kojukande teenuseosutajale rahaliste hüvitiste väljamaksete info. courierDeliveryAnnulation Teenus väljastab kojukande teenuseosutajale tühistatud rahaliste hüvitiste väljamaksete info. courierDeliveryReply Teenus võtab vastu kojukande teenuseosutajalt teostatud väljamaksete info - kas õnnestus raha kliendile viia või mitte. createTransactionV2 Registreerib uue abivahendi müügi- või renditehingu. endRental Lõpetab kehtiva abivahendi rendi perioodi findUsage Teenus väljastab Eesti.ee jaoks SKAIS2 poolt pakutavate isikustatud Xtee teenuste kasutamise infot. incomeTaxExemptionV1 Teenus pensionikeskusele isiku tulumaksuarvestuse vaba jääk isikutePuuded Tagastab Kaitseressursside ametile isikute puude info nonResidencePersons Teenus väljastab etteantud perioodis Sotsiaalkindlustusametile teavitatud välisriikide maksuresidentsuse andmed (sh. riigi, perioodi, tõendi staatuse ja registreerimise aja kohta) providerValidity Valideerib et vastaval teenuseosutajal on õigus teostada soodustingimustel abivahendi müüki. requestTransactionEvents Teenus abivahendite teenuseosutajatele tehtud tehingute sündmuste pärimiseks. requestTransactions Teenus abivahendite teenuseosutajatele tehtud tehingute pärimiseks star1Tulud Teenus väljastab kohalikele omavalitsustele päritava isiku kohta info, milliseid hüvitisi on Sotsiaalkindlustusameti poolt 18 Teenus Selgitus isikule määratud. Millised on olnud hüvitiste väljamaksed ja kinnipidamised. starPuue2 Teenus väljastab kohalikele omavalitsustele, milliseid puuded on isikule määratud. taituri_vmaksed Teenus väljastab kohtutäituritele Sotsiaalkindlustusameti poolt isikutele teostatud väljamaksete info. tlvIsikuPuudeInfo Teenus väljastab Tallinna linnavalitsusele päritava isiku kohta info, mis liiki puue on isikule määratud. 4.27.3. SKAIS2 poolt tarbitavad teenused: Andmekogu Teenus Selgitus arireg lihtandmed_v1 Äriregister - Lihtandmete päring Äriregister - Ettevõtja detailandmete arireg detailandmed_v3 päring Ametlikud teadaanded – Teenusega at teadaandeLiigid_v2 tagastatakse teadaande liikide kirjeldused. Ametlikud teadaanded – Teenusega at otsiTeadaanne tagastatakse teadaannete info. Terviseinfosüsteem – Teenusega digilugu hl7 päritakse Arstliku-eksperiisi taotluse juurde isiku viimase viie aasta arstivisiite. Eesti hariduse infosüsteem - Õppuri ehis sotsList1V2 andmed peretoetuste jaoks Eesti hariduse infosüsteem - Õppurite ehis sotsList2 andmed toitjakaotuspensionide jaoks Haigekassa infosüsteem - Kontrollipäring kirst kindlustatus isiku kindlustatuse kohta Haigekassa infosüsteem – kindlustusaluse kirst kindlustusalus info edastamine haigekassale Haigekassa infosüsteem – Päring isiku kirst tvl_loetelu2 töövõimetuslehtede kohta Pensionikeskus – Päring kontrollimaks, kpr liitumise_kontrollimine kas isik on liitunud pensioni II sambaga. Pensionikeskus – Päring kontrollimaks kas kpr maksekohustused isik on lõpetanud maksed pensioni II sambasse. 19 Maksu- ja tolliamet – Päring isiku tsd skaSotsmaks sotsiaalmaksu andmete kohta Maksu- ja tolliamet – Päring isiku EMTA PublicNonResidencyInquiry residentsuse kohta. Pensionikindlustuse register – Päring pkr STAR1_TULUD kohalikele omavalitsustele makstud tulude kohta. Pensionikindlustuse register – Päring pkr taituri_vmaksed isikule tehtud väljamaksete küsimine. Rahvastikuregister – Päring isikukoodi rr RR456 alusel isiku andmete kohta (dokumendid, suhted ja hooldusõigused) Rahvastikuregister – masspäring rr RR67_muutus isikuandmete muudatuste kohta vastavalt edastatud ajavahemikule. Rahvastikuregister – uuenenud RRisikuandmeteMuudatused rr masspäring isikuandmete muudatuste kohta vastavalt edastatud ajavahemikule. RRisikuViibimiskoht Rahvastikuregister – Päring isiku rr viibiiskoha kohta. STAR - Päring kohalike omavalitsuste star KontrolliToimetulekuToetuseSaamist infosüsteemist kontrolimaks isiku toimetulekutoetuse saamist. STAR – proaktiivne teenus, saadetakse kõik puudeotsused. star starPuudeotsusedV1 Kohalikelomavalitsustel on vajalik teada isikutele määratud puuded haldusalas elavate isikute abivajaduse hindamiseks. Eesti töötukassa töövõime hindamise tkis EkspertiisArvamusV2 tuvastamise ekspertiisi andmeid välistele asutustele Töötuna arveloleku andmestik tkis TootuArvelolekV2 vanamahüsitise alusandmete jaoks tkis TVHOtsusV1 Töövõime hindamise tuvastamise otsus Töövõime hindamise tuvastamise tkis TVHTaotlusNimekiriV1 taotluste nimekiri 20 Töötamise informatsiooni küsimine tor TORIK Töötamise registrist. Töötamise register - Töötamise andmete tor TOOTREG_AMETNIK muutmise teenus. Töötamise register - Masspäring tor uploadMime etteantud isikukoodide alusel isikute töötamise kohta Töötamise register - Masspäringu vastus tor downloadMime eelnevalt küsitud isikute töötamise kohta. 4.27.4. Tüüp: sünkroonne 4.27.5. Kasutatud protokoll: SOAP 4.28. X-Road 4.28.1. Suhtlus erinevate andmekogudega. 4.28.2. SKAIS2 poolt pakutavad teenused: Teenus Selgitus search-persons-latest- Teenusega antakse STAR’ile teada isiku viimased kontaktandmed. contacts teavitaSynnitahtaegV1 Teenusega võetakse, tervise teenuse osutajatelt (nt. haiglad), vastu informatsiooni eeldatava(te) sünnitähtaegade kohta. tyhistaSynnitahtaegV1 Teenusega võetakse, tervise teenuse osutajatelt (nt. Haiglad) vastu informatsiooni perinataalsurmade kohta. 4.28.3. Tüüp: sünkroonne 4.28.4. Kasutatud protokoll: HTTP(S) REST 5. Süsteemi arhitektuuris kasutatavad tehnoloogiad 5.1. Apache HTTP Server — Versioon: 2.4. Konfiguratsioon ja nõuded: SSL, koormusjaotur (mod_proxy_balancer), sticky session. Operatsioonisüsteem: RedHat / CentOS / Oracle Enterprise Linux. 5.2. Apache Tomcat — Versioon: 9.0.x Konfiguratsioon ja nõuded: klasterdamine Tomcat rakendusserverite tasemel (SimpleTcpCluster). Operatsioonisüsteem: RedHat / CentOS. 5.3. Oracle BI Publisher — Versioon: Oracle Business Intelligence (12.2.x). Konfiguratsioon ja nõuded: Repositoorium Oracle 19c EE; rakendusserver: Oracle WebLogic (kaasas by default installatsiooni paketis). Operatsioonisüsteem: Oracle Linux. 5.4. Oracle 19c EE — Versioon: Oracle Database 19c Enterprise Edition 19.13. Konfiguratsioon ja nõuded: klasterdatud andmebaas. Operatsioonisüsteem: RedHat / CentOS / Oracle Enterprise Linux. 5.5. Oracle Database Advanced Queuing — kasutatakse erinevate enne 2018 tarnitud komponentide vahel asünkroonseks suhtluseks. 5.6. Rabbit MQ — Versioon: 3.8.16. Kasutatakse erinevate komponentide vahel asünkroonseks suhtluseks. 6. Tehnoloogiate maatriks 21 Apache SOAP / Sõnumi- Rakendus Java Tomcat Andmebaas Märkus REST vahetus 9 Suhtlus X-teega kasutab SOAP Oracle AQ liidestust, muu SOAP + Ametniku portaal 11 Jah + Oracle 19c EE suhtlus käib REST REST RabbitMQ ja asünkroonse sõnumivahetuse abil. Komposiit 11 REST Jah RabbitMQ Oracle 19c EE Abivahendite teenus 11 REST Oracle 19c EE Arestid 11 REST RabbitMQ Oracle 19c EE Arstlik-ekspertiis 11 REST RabbitMQ Oracle 19c EE küsimustik Arstlik-ekspertiis 11 REST RabbitMQ Oracle 19c EE menetlus Arstlik-ekspertiis 11 REST RabbitMQ Oracle 19c EE taotlus Dokumendi hoidla 11 REST RabbitMQ Oracle 19c EE Finants facade 11 REST RabbitMQ Oracle 19c EE Ekspertarsti hinnang 11 REST RabbitMQ Oracle 19c EE Elatisabi 11 REST RabbitMQ Oracle 19c EE Kliendipöördumised 11 REST RabbitMQ Oracle 19c EE Kindlustuslepingud 11 REST RabbitMQ Oracle 19c EE Pensioniõiguslik staaž 11 REST RabbitMQ Oracle 19c EE Rahvastikuregistri 11 REST RabbitMQ Oracle 19c EE andmete töötlemine RFK klassifikaator 11 REST RabbitMQ Oracle 19c EE Digitempli teenus 11 RabbitMQ Oracle 19c EE Dokumentide 11 Oracle 19c EE arhivaator X-tee teenustäitja 11 SOAP Jah Oracle 19c EE (sisenevad) 22 Apache SOAP / Sõnumi- Rakendus Java Tomcat Andmebaas Märkus REST vahetus 9 X-road teenustäitja 11 REST RabbitMQ Oracle 19c EE (sisenevad) Abivahendite x-tee SOAP + teenusetäitja 11 Oracle 19c EE REST (sisenevad) X-tee andmejälgija 11 SOAP PostgreSQL RINA Facade 11 REST RabbitMQ Oracle 19c EE Protsessimootor 11 SOAP Oracle AQ Oracle 19c EE X-tee turvaserver SOAP Failihoidla 11 Oracle 19c EE TUUM Andmebaas Oracle 19c EE 7. Tuleviku visioon 7.1. Läbiviidud arhitektuurianalüüsi käigus loodi tänaste probleemide adresseerimiseks uus arhitektuuriline visioon, millega kaasnevad tähtsamad muudatused on: 7.1.1. 2018 arendatud olemasolevate rakenduste (ametnikurakendus, X-tee teenusetäitja ja protsessimootori "monoliidid") kõrvale on hakatud arendama igale valdkonnale eraldi koodibaasi ja rakendusi. Uuemad äriteenused on arendatud jälgides mikroteenuste arhitektuuri põhimõtteid. Tasapisi on olemasolevatest teenuste monoliidist välja tõstetud funktsionaalselt iseseisvaid tükke ning need realiseeritud eraldi mikroteenustena. Kavas on seda mustrit jätkata ning edasistes arendustes monoliidi osakaalu järk-järgult veelgi vähendada. 7.1.2. Rakenduste paigaldusel võetakse kasutusele konteinerlahendused (Kubernetes). Uute rakenduste loomisel võetakse kohe arvesse, et neid saaks paigaldada ka konteinerina. 7.1.2.1. NB: täna (02.2024) ei ole Kubernetes veel toodangus. Tänase teenusetäitjaga käivad läbirääkimised Kubernetese klastri seadistuse ning halduse vastutuste piiride üle. 7.1.2.2. Seni tarnitud komponentide liigutamisega Kubernetese konteinerplatvormile on plaanis alustada 2025 aastal. 7.1.2.3. SKAIS2 rakenduse kolimine Kubernetese klastrisse toimub järk järgult üksikute ärikomponentide kaupa, kuni lõpuks on kõik SKAIS2 komponendid Kubernetese klastris. 7.1.3. Suurem rõhk continuous integration'ile ja automaattestimisele. 7.1.3.1. Seniste tarneprotsesside optimeerimine ja automatiseerimine. 7.1.3.2. Keskkonna konfiguratsioonide ühtlustamine ja versioneerimine. 8. Teenuse tehniline kirjeldus 8.1. Nõuded serveriruumile ja infrastruktuurile 8.1.1. Täitja majutab tellija infosüsteemi kahes füüsiliselt eraldi asukohas ja eraldi aadressidel paiknevas serveriruumis. Serveriruumid ja nendevahelised ühendused peavad 23 paiknema Eesti Vabariigi territooriumil ja serveriruumide minimaalne nõutud geograafiline vahemaa vähemalt 1 km. 8.1.2.Serveriruumid peavad olema spetsiaalselt ehitatud serverite majutuseks ja vastama E- ITS turbeastmele H ning standardile ANSI/TIA-942 (Telecommunications Infrastructure Standard for Data Centers) tasemele Tier 3, mööndusega, et varugeneraator ei pea olema dubleeritud. 8.1.3. Täitja tagab SKAIS2 infosüsteemile turvatud (SSL) välise andmesideühenduse kiirusega vähemalt 100 Mbps (megabitti sekundis) ja serveriruumide vahel füüsilise, turvatud (VPN) dubleeritud ühenduse kiirusega vähemalt 1 Gbps (gigabitti sekundis). 8.1.4.Andmesideühenduse (internetiteenuse) täitja peab olema Eesti Interneti SA poolt akrediteeritud. 8.1.5. Serverite ja serveriruumide vaheline ühenduse kiirus peab olema piisav, et tagada teenustaseme nõuded. Tõrke korral peab olema tagatud teenuste üle viimine teise serveriruumi teenuse nõuetele vastava aja jooksul. 8.1.6.Täitja serveriruumid peavad olema ühendatud tellija serveriruumidega läbi VPN ühenduse kiirusega vähemalt 1Gb/s. Tellija serveriruumid asuvad serverimajutuskeskustes kahes erinevas lokatsioonis Eesti Vabariigis. 8.1.7. Täitja tagab eraldatud turvadomeenid süsteemi tuumale, Ametnikurakendusele, Avalikule rakendusele ja eBS rakendusele. Täitja kirjeldab pakkumises vastavat tehnilist lahendust. 8.1.8.Täitja peab kasutama riistvara, millel töötab ainult tellija infosüsteem. Pakutaval riistvaral ei tohi töötada samal ajal kolmandate osapoolte infosüsteemid. Samuti ei tohi olla kolmandatel osapooltel ligipääse pakutavale riistvarale ja operatsioonisüsteemile. 8.2. SKAIS2 infosüsteemi majutus- ja tugiteenuste üldised (miinimum) nõuded 8.2.1.Täitja kohustub tagama SKAIS2 infosüsteemi kasutamise võimaluse veebikeskkonnas ning lepingu kehtivuse perioodil kindlustama keskkondade nõuetekohase (hankedokumendis ja teenusepassis kirjeldatud) funktsioneerimise. 8.2.2. Täitja tagab SKAIS2 infosüsteemi järgmised majutus- ja tugiteenused: 8.2.2.1. Serverite, võrgu- ja salvestusseadmete ressursid. 8.2.2.2. Andmebaaside administreerimine ja monitooring. 8.2.2.3. Rakenduste administreerimine ja monitooring. 8.2.2.4. Infrastruktuuri administreerimine ja monitooring. 8.2.2.5. X-tee turvaserverite (x-tee v6) administreerimine, versiooniuuendused ja sellega kaasnevad tööd, kaasa arvatud riistvaralist turvalist allkirjastamist võimaldavat (SSCD) seadet. Majutaja tagab tehnilise võimekuse osutada teenust vastavalt kehtivatele x-tee nõuetele. SKAIS2 tarkvaras kasutatakse digitembeldamist, mille tehnilises realisatsioonis kasutatakse RIA soovituste mõttes vähemalt keskklassi SSCD seadet (HSM), mis tagab vähemalt 20 päringut/s. HSM seadme tagab Täitja majutusteenuse koosseisus. 8.2.2.6. Muudatuste haldus. 8.2.2.7. Konsultatsioonid ja parendusettepanekud. 8.2.2.8. Muud ühekordsed tegevused ehk lisatööd. 8.2.2.9. Teenuse lõpetamisega seotud tööd lepingu lõppemisel. 8.2.3.Infosüsteem peab olema majutatud kahes serveriruumis põhimõttel primary site ja failover site. Täitja peab kirjeldama, mis vahenditega tagatakse vajaduse korral teenuste üle viimine teise serveriruumi vastavalt käideldavusnõuetele. 8.2.4. SKAIS2 infosüsteemi Oracle andmebaaside vaheliseks andmete reaalajas sünkroniseerimiseks peab Täitja kasutatama Oracle Data Guard tarkvara. Oracle Active Data Guard tarkvara võetakse kasutusele vajadusepõhiselt, mille kasutuselevõtu tingimused lepitakse eraldi kokku teenuseosutajaga. 24 8.2.5. eBS infosüsteemi Oracle andmebaaside vaheliseks andmete reaalajas sünkroniseerimiseks peab Täitja kasutatama Oracle Data Guard tarkvara. 8.2.6. Vältimaks SKAIS2 infosüsteemi ülekoormamist ei tohi Oracle BI Publisher aruandluskeskkond andmeid pärida aktiivsest SKAIS2 infosüsteemi andmebaasist. 8.2.7. Lepingu lõppedes kooskõlastatakse andmete uude majutuskeskkonda migreerimise ja seejärel hävitamise protsess Tellija ja Täitja vahel. Andmete ülekolimise ja hävitamise järgselt vormistab majutusteenuse osutaja akti, millega kinnitatakse, et andmed on hävitatud. 8.2.8. Teenuse osutaja vahetumisel, vormistatakse andmete ülekolimise (migratsiooni) läbiviimise järgselt kolmepoolne üleandmis-vastuvõtu akt (andja, vastuvõtja, omanik). 8.2.9. Teenuse lõppedes, uude keskkonda andmete migratsiooni ettevalmistamine ja läbiviimisel abi osutamine (täitja pädevuse ulatuses) on majutusteenuse osa ja ei ole eraldi tasustatav. 8.3. Nõuded andmete hoidmisele 8.3.1. Kõik infosüsteemis töödeldavad andmed (andmebaasis ja rakendusserverites) peavad paiknema keskses andmesalvestusmassiivis, mille andmemaht on lihtsasti juurde tellitav. Andmesalvestusmassiiv peab võimaldama andmete kloonimist töökeskkonnast töökeskkonna-eelsesse ja testkeskkonda. Andmesalvestusmassiivi mis tahes komponendi rike ei tohi põhjustada andmekadu. 8.3.2.Täitja peab maandama andmesalvestusmassiivi riknemise riski, mis võib Tellijale tähendada ulatuslikku teenusekatkestust. Täitja kirjeldab pakkumuses, kuidas ja mis vahenditega (sh SAN seadmed ja andmesalvestusmassiivid) on tagatud mainitud riskide maandamine. 8.4. X-tee turvaserverid 8.4.1.SKAIS2 infosüsteemis on kasutusel x-tee versioon 6 raamistik. 8.4.2. Täitja tagab eraldi x-tee turvaserverid töökeskkonna, toodangueelse keskkonna ja testkeskkonna tarbeks. Testkeskkond on liidestatud X-tee testkeskkonnaga; toodangueelne ja toodangukeskkond on liidestatud X-tee töökeskkonnaga. 8.4.3.Täitja tagab x-tee ligipääsu dubleeritud serveriruumis, sealhulgas olukorras, kus primaarne serveriruum ei ole kasutatav ja töökeskkond on üle kolitud. 8.4.4. Täitja osutab Tellijale turvaserverite administreerimisteenust. 8.4.5. Täitja peab omama x-tee turvaserveri logimise lahendus, mis võimaldab väljastada regulaarselt logiandmed tellijale. 8.5. Muudatuste haldus 8.5.1. Arendusmuudatuste paigalduse õigus on ainult täitjal, kui ei lepita kokku teisiti. 8.5.2. Arendusmuudatused valmistab ette täitja ja edastab paketeeritult koos paigaldusjuhendiga paigaldamiseks toodangu-, toodangueelsesse ja testkeskkonda. Paigalduspakettide, juhendite jm vajaliku informatsiooni edastamiseks ja paigaldustega seotud tegevuste dokumenteerimiseks, kasutatakse tellija tööde/projektide juhtimise keskkonda Jira. 8.5.3. Teenusetäitja paigaldab arendusmuudatusi lepingu raames vastavalt teenuse passile ja tarne juhendile. 8.5.4. Toodangukeskkonda ja toodangueelsesse keskkonda tehakse üldjuhul kuni 4 arendusmuudatuse tarnet ja 4 veaparandustarnet kuus. Testkeskkonda tehakse üldjuhul kuni 12 arendusmuudatuse tarnet ja 12 veaparandustarnet kuus. Arendusmuudatusi töökeskkonda viiakse sisse väljaspool aktiivset tööaega. 8.5.5.Teenusetäitja peab vastavalt tellimusele käivitama parandusskripte vigade tuvastamiseks ja parandamiseks. 8.5.6. Arendusmuudatuste paigalduse aja kooskõlastab täitja tellijaga. 8.5.7. Täitja poolt arendusmuudatuse paigalduse ebaõnnestumisel vastutab täitja süsteemi taastamise (rollback) eest. 25 8.5.8. Täitja uuendab toodangueelse ja testkeskkonna andmeid toodangukeskkonna andmetega tellija tellimusel kui tarnejuhend või arendusprotsessi etapp (näiteks andmemigratsiooni ettevalmistamine) seda ette näeb. Andmeuuenduse läbiviimise aeg ja maht lepitakse eraldi kokku. 8.5.9. Teenusetäitja tagab tellija tellimisel arenduspartneritele ligipääsu test- ja toodangueelsele keskkonnale (andmebaasile, rakendusserverile) 2 tööpäeva jooksul. 8.5.10. Teenusetäitja tagab tellija tellimisel arenduspartneritele ligipääsu sulgemise test- ja toodangueelsele keskkonnale esimesel võimalusel, kuid mitte hiljem kui 2 tööpäeva jooksul. 8.5.11. Täitja peab tagama Tellija tellimisel (andme)halduritele / rakenduse administraatoritele ligipääsud kõikide SKAIS2 keskkondade serverite operatsioonisüsteemi konfiguratsioonifailidele ja andmebaasidele. 8.6. Varundamine ja teenuse taastamine 8.6.1.Täitja teeb majutuskeskkonnas olevatest süsteemidest regulaarselt varukoopiaid selliselt, et oleks tagatud teenuse passis sätestatud tingimuste täitmine. Täitja peab pakkumises kirjeldama, et milliste vahendite ja meetoditega tehakse varukoopiaid. 8.6.2. Varukoopiaid tehakse rakendusi seiskamata st, et Tellija infosüsteemide käideldavus ei ole varukoopiate tegemise ajal mõjutatud. Varundust teostatakse väljaspool infosüsteemi tööaega. 8.6.3.Varukoopiad tuleb salvestada töökeskkonnast eraldi asuvatele andmekandjatele, mis asuvad erinevas füüsilises lokatsioonis. Varukoopiad ja nende allika vaheline andmevahetus peab olema krüpteeritud. 8.6.4. Täitja on kohustatud hoidma töökeskkonna varundatud andmeid järgnevalt: 8.6.4.1. Vähemalt kahe viimase kuukoopia. 8.6.4.2. Vähemalt neli viimast nädalakoopiat. 8.6.4.3. Vähemalt viis viimast tööpäevakoopiat. 8.6.5. Kuukoopiad on planeeritud kopeerida täiendavalt andmesaatkonda. Ajakava ning täpne tehniline lahendus töötatakse välja ja realiseeritakse koos eduka Täitjaga töö käigus 2020/21.aastal. 8.6.6. Andmekadu põhjustavat intsidenti käsitletakse kui erakorralist intsidenti. Erakorralise intsidendi korral on lubatud teenuse järjestikune seisak kuni 4 tundi ja summaarne seisak kuni 4 tundi nädalas ja kuni 6 tundi kalendrikuus. Pärast intsidendi lahendamist ja/või andmete taastamist esitab täitja tellijale detailse raporti, kus toob välja intsidendi põhjuse, mis põhjustas andmekadu ning meetmed selliste juhtumite vältimiseks või esinemise tõenäosuse vähendamiseks tulevikus. 8.6.7. Täitja töötab pärast iga keskkonna käivitamist ühe kuu jooksul välja vastava keskkonna taasteplaani ja esitab selle Tellijale ülevaatamiseks ja kinnitamiseks. Taasteplaan peab sisaldama tegevuskava ja süsteemi üldist arhitektuuri kirjeldust visuaalsel kujul. Olulised infrastruktuuri komponendid (serverid, võrguseadmed jne) peavad olema kirjalikult lahti seletatud. 8.6.8. Täitja testib taasteplaani ajakohasust, kui toimub muudatus Tellija infosüsteemiga seotud infrastruktuuris, kuid mitte harvemini kui üks kord aastas. Täitja kooskõlastab Tellijaga testi läbiviimise aja ning esitab Tellijale pärast testi läbiviimist raporti, kus märgib ära taasteplaani vastavuse tegelikule olukorrale ja plaanist leitud puudused. Puudused tuleb kõrvaldada Tellijaga kokkuleppel mõistliku aja jooksul ning seejärel korraldada uus taasteplaani test. 8.7. Monitooring 8.7.1. Täitja tagab tsentraliseeritud tehnilise toe teenuse, mis on avatud 24 tundi ööpäevas ja seitse päeva nädalas, mille kaudu sooritatakse mitmesuguseid süsteemiga seotud järelevalve, muudatuste ja veahalduse menetlustoiminguid. 8.7.2. Tehnilise toe teenuseid osutatakse osana majutusteenustest, kus kõik süsteemihoiatused saadetakse tsentraliseeritud 24 tundi toimivale tehnilisele toele (sh 26 võrgu, serveri ja rakenduse hoiatused). Rakenduste ja teiste SKAIS2 komponentide monitooringuinfo hoitakse Graylog logihalduse keskkonnas. Graylog logihalduse keskkond (on-premise) on majutusteenuse osa. 8.7.3. Kõik keskkonnad peavad olema Täitja poolt monitooritud kogu lepinguperioodi vältel. 8.7.4. Täitja võimaldab Tellijale ja Tellija poolt nimetatud arendajale juurdepääsu monitooringuinfole või edastab monitooringuteated Tellija poolt etteantud meiliaadressile. 8.7.5. Täitja installeerib vajadusel või Tellija palvel serveritesse täiendavad monitooringuagendid, mis koguvad infot serverite ja rakenduste seisundi kohta. Tellijal on täna kasutusel monitooringu süsteem Prometheus ja Grafana. 8.7.6. Täitja monitoorib serverites asuvate infosüsteemide tööd vähemalt järgmiste komponentide osas: 8.7.6.1. Andmesideühenduse olemasolu Tellija serverite ja infosüsteemide vahel. 8.7.6.2. Serverite riistvaraliste komponentide töökorras olek. 8.7.6.3. Serverite protsessorite ja mälukasutus. 8.7.6.4. Kõvaketaste täituvus. 8.7.6.5. Süsteemi load (UNIX süsteemide puhul). 8.7.6.6. Andmebaasisüsteemi töökorras olek. 8.7.6.7. Andmebaasile eraldatud ressursside olemasolu. 8.7.6.8. Varukoopiate tegemise õnnestumine. 8.7.6.9. Monitooringusüsteemi töökorras olek. 8.7.7. SKAIS2 infosüsteemi rakenduse monitooring 8.7.7.1. Täitja poolset SKAIS2 rakenduse monitooringut ei nõuta. Täitjal peab olema valmisolek integreerida oma keskkonda Tellija poolt kasututavad rakenduse monitooringu vahendid (agendid vms). 8.8. Teenuse tehniline tugi 8.8.1.Täitja peab tagama kasutajatoe (ühtne kontaktpunkt, telefoni number, e-mail ja/või avalik portaal) vastavalt Teenuse passis toodud nõuetele. 8.8.2. Täitja peab teavitama Tellijat kriitilistest ja keskmise taseme vigadest koheselt ja asuma teenuse nõutud tingimustele vastavust taastama. 8.8.3.Kui tõrget ei ole võimalik teenuse passis nõutud aja jooksul lahendada, peab Täitja esitama põhjendused ja lahendusettepanekud. 8.8.4. Kriitilise taseme tõrkeks loetakse olukorda, kus SKAIS2 toodangukeskkonna tervikuna või oluliste komponentide, s.h andmevahetused teiste infosüsteemidega, kasutamine ei ole võimalik. 8.8.5. Keskmise taseme tõrkeks loetakse olukorda, kus SKAIS2 toodangukeskkonna kasutamine on oluliselt häiritud. 8.8.6. Madala taseme tõrkeks loetakse olukorda, kus SKAIS2 toodangukeskkonna kasutamine on võimalik, kuid on häiritud. 8.9. Aruandlus ja infovahetus 8.9.1.Täitja esitab majutusteenuse osutamise kohta igakuiselt ülevaate eelmise kuu kohta, mis sisaldab vähemalt järgmist informatsiooni: 8.9.1.1. Süsteemi komponentide käideldavus vastavalt teenuste passi nõuetele. 8.9.1.2. Perioodi vältel toimunud intsidendid koos algus- ja lõpuajaga, juurpõhjusega (kui on selgunud) ning kirjeldusega, kuidas neid edaspidi vältida. 8.9.1.3. Perioodi vältel tehtud plaanilised tööd. 8.9.1.4. Muudatuste logi. 8.9.1.5. Tellija poolt perioodi jooksul esitatud pöördumiste staatus, mis sisaldab ka lahendamata pöördumisi eelmistest perioodidest. 8.9.1.6. Täitja poolsed ettepanekud infosüsteemi ja majutuse parendamiseks ning teostamiskava. 27 8.9.2. Aruandlus peab olema tellija kontaktisikutele kättesaadavaks tehtud veebi kaudu või e-kirja teel. 8.9.3.Täitja peab võimaldama tellijal tellida tellimustööna täiendava tasu eest ühekordseid raporteid nt andmebaasi detailseid koormusraporteid. 8.9.4. Täitja ja tellija vaheline töökeel on eesti keel. 28 III. STAR arhitektuuridokument 1. Sissejuhatus 1.1. Antud dokument kirjeldab STAR infosüsteemi arhitektuuri, sisaldades antud süsteemi komponentide kirjeldust, nende omavahelist suhtlemist, paigaldusvaadet ning kirjeldust süsteemi ning teda ümbritsevate keskkondade vahel. 2. Süsteemi taust 2.1. Sotsiaalkindlustusameti infosüsteem STAR on riigi keskne andmeregister, mis on asutatud juhtumikorralduse põhimõttel läbiviidava sotsiaaltöö korraldamiseks ja mille põhikasutajateks on kohalike omavalitsuste sotsiaaltöö spetsialistid ja sotsiaalteenuseid osutavate ettevõtete esindajad. STAR-i peetakse seadustest tulenevate Sotsiaalkindlustusameti avalike ülesannete täitmise eesmärgil. 2.2. STARis on toimumas tehnoloogiline siirdumine monoliitrakendusest mikroteenustele põhinevale rakendusele. Siirdumine toimub väikeste sammudega ja paralleelselt on kasutusel monoliitrakendus (STAR1) ja mikroteenustel põhinev rakendus (STAR2). STAR1 ja STAR2 suhtlevad omavahel läbi API liideste. Kummalgi rakendusel on oma kasutajaliides. 2.3. STAR1 koosneb kolmest eraldi paigaldatavast rakendusest: 2.4. Ametnikurakendus (star-web.war) - peamine rakendus. KOVi ja SKA menetluste äriloogika juhtimine; 2.5. X-tee provider (STARXteeProvider6.war) - pakub X-tee teenuseid välistele infosüsteemidele; 2.6. NGTS seire ankeet () - lihtne ankeedi rakendus Noortegarantii tugisüsteemi (NGTS) seire teostamiseks. 2.7. Andmeid hoitakse keskses Oracle 19c andmebaasis. 2.8. STAR2 mikroteenused on veel algses arengu järgus. Valmis on tehtud kolmes küpsusastmes teenuseid: 2.9. Iseseisvad mikroteenused - Kogu vajalik funktsionaalsus on arendatud ühe mikroteenuse sisse. Mikroteenusel on oma andmebaas. 2.10. Hübriidmikroteenus - Vajalik funktsionaalsus on arendatud mikroteenuse sisse. Mikroteenusel on oma andmebaas. Aga ta sõltub mingil määral STAR1 andmetest ja äriloogikast. 2.11.Proxymikroteenused - Mikroteenus ei sisalda äriloogikat ega oma oma andmebaasi. Vajaliku äriloogika ja andmed asuvad STAR1 rakenduses. Proxy mikroteenus vahendab STAR1 loogikat ja andmeid. 2.12. Edasistes arendustest peavad hübriid ja proxy mikroteenused muutuma iseseisvateks mikroteenusteks. 2.13.Iseteeninduse broneeringute rakendus on osa Sotsiaalkindlusameti iseteenindusest. Kuna Sotsiaalkindlustusameti iseteeninduse põhirakendus ei toeta mikrofrontende, siis broneeringute süsteem on arendatud eraldi iseseisva rakendusena. Iseteeninduse broneeringute rakendus baseerub mikroteenustel. STAR ja SKAIS infosüsteemidega toimub andmevahetus üle X-tee. 2.14. Infosüsteemi STAR majutuskeskkond koosneb kolmest võrgu tasemele teineteisest lahusolevast keskkonnast. Kõiki keskkonnad on üles ehitatud sarnase arhitektuuri ja komponentidega va. testkeskkond, millel puudub vajadus teise dubleeriva õla järele. Allpool dokumendis on komponentide tasemel piisava detailsusega lahti kirjutatud STAR loogiline arhitektuuriline ülesehitus kirjeldamaks praeguse süsteemi toimimist ja võimaldamaks jätkusuutlikku arengut tulenevalt Sotsiaalkindlustusameti arenduse soovidest. 3. STAR komponentdiagramm 29 3.1. Järgnev skeem kirjeldab STAR infosüsteemis paiknevaid komponente ning nende vahelist suhtlust. 3.2. Veebiportaal – Ametnikele mõeldud veebirakendus 3.3. SSO ja KeyCloak – Autentimislahendus süsteemi möldimiseks. 3.4. Turvaserver – Liidestus X-Teega. 3.5. Andmebaas – Oracle Database Enterprise Edition, STAR andmestik. 4. Majutatavad teenuse komponendid 4.1. Andmebaas 4.1.1. Oracle Database 19c Enterprise Edition. 4.2. Veebiportaal 4.2.1.KOV ametnikele mõeldud veebirakendused 4.2.2. Tüüp: teenuseid pakkuv veebilehekülg 4.2.3.Kasutatud protokoll: https 4.2.4. Käideldavus: klastrisse ja koormusjaoturi taha paigaldatud virtualiseeritud masinad. 4.3. Adapterserver 4.3.1. Kasutatakse x-tee teenuste vahendamiseks x-teele 4.3.2.Tüüp: sünkroonne ja asünkroonne teenus; süsteemne taustprotsess 4.3.3. Kasutatud protokoll: integreeritud süsteemi osa 4.4. Digitempel 4.4.1.SSCD seade võimaldamaks turvalist allkirjastamist. SSCD seade peab võimaldama teostada 100 allkirjastamist minutis. 4.4.2. Tüüp: Daemon protsess 4.4.3.Kasutatud protokoll: jdbc; https; 4.5. Turvaserver 30 4.5.1. X-tee turvaserver, vajalik X-teel andmete vahetamiseks. 4.5.2. Kasutatud protokoll: soap 5. Välised liidestused 5.1. SSO (KeyCloak) 5.1.1. Autentimislahendus, liidestatud RIA TARA keskkonnaga, et pakkuda ID-kaardiga, Mobiil-ID ja SMART-ID sisselogimist 5.1.2. karbitoode: https://www.keycloak.org/ 5.2. Sertifitseerimiskeskus 5.2.1. Digiallkirjade kehtivuskinnitus 5.2.2. Tüüp: sünkroonne teenus 5.3. Pank 5.3.1. Väljamaksete edastamine panka 5.3.2. Tüüp: asünkroonne gateway 5.3.3. Kasutatud protokoll: SOAP 5.4. X-tee 5.4.1. Erinevate andmekogudega suhtlus 5.4.2. Tüüp: sünkroonne/asünkroonne 5.4.3. Kasutatud protokoll: SOAP 6. Süsteemi arhitektuuris kasutatavad tehnoloogiad/tarkvarad 6.1. Serverite operatsioonisüsteem 6.1.1. Serverite operatsioonisüsteemi tarkvarad peavad olema kaetud tootjapoolse tarkvaratoega lepingu perioodi vältel. 6.1.2.Operatsioonisüsteem: Red Hat Enterprise Linux 7 (RHEL) / Oracle Enterprise Linux 7 (OEL). 6.1.3. X-tee turvaserveritel Ubuntu linux LTS (vastavalt RIA nõuetele). 6.1.4.Vajalikud litsentsid tagab Täitja. 6.2. Apache HTTP Server Versioon: 2.4. 6.2.1.Konfiguratsioon ja nõuded: SSL, ID-Kaardi sertifikaadi tuvastamine (ssl konfiguratsioon). 6.2.2. Operatsioonisüsteem: Red Hat Enterprise Linux 7 (RHEL) 6.2.3.Vajalikud SSL sertifikaadid tagab Tellija. 6.3. Apache Tomcat Versioon: 8.x 6.3.1. Konfiguratsioon ja nõuded: - 6.3.2.Operatsioonisüsteem: Red Hat Enterprise Linux 7 (RHEL) 6.4. Oracle Database Standard Edition 19c 6.4.1.Konfiguratsioon ja nõuded: klasterdatud andmebaas. 6.4.2. Operatsioonisüsteem: Oracle Enterprise Linux 7 (OEL). 6.4.3.Andmebaasi eeldatav stardimaht (täna olemasolev andmestik) 1TB 6.4.4. Tellija tagab 2 (kaks) Oracle Database Standard CPU litsentsi. Süsteemi arengust tingitud vajaduse korral tagab lisalitsentsid Tellija. 7. STAR2 ametniku rakenduse arhitektuur – mikroteenused 7.1. Esimene etapp uuele arhitektuurile üleminekul saab olema lapse abivajaduse hindamise projekt (LAEH), mille arendused valmivad suvel 2022. Analüüsi üks eesmärk oli välja töötada STAR uue arhitektuuri kontseptsioon ja põhimõtted ning kaardistada esimeses etapis realiseeritavad arhitektuuritööd. 7.2. STAR2 ametniku rakenduse arhitektuur: 31 7.3. Sotsiaalkindlustusameti iseteeninduse broneeringute rakendus: 7.4. STAR tarkvarad, raamistikud ja platvormid 7.4.1. STAR1 monoliitrakenduse komponendid: Tarkvara Toodang Prelive Test Arendus Apache HTTPD/2.4.6 x x x 32 Apache Tomcat/8.5.4 x x x x JAVA/openjdk version "1.8.0_111" x x x x Oracle Database 19c - 64bit x x x LiquiBase x x x x Oracle 18XE x 7.4.2. STAR ja iseteeninduse mikroteenuste keskkond: Tarkvara Toodang Prelive Test Arendus Java/openjdk 17 x x x x Spring Boot x x x x Next.js (React) x x x x PostgreSQL 14 x x x x Kubernetes x x x x FlyWay x x x x Traefik Ingress x x x Nginx Ingress x RabbitMq x x x x 8. Teenuse tehniline kirjeldus 8.1. Nõuded serveriruumile ja infrastruktuurile 8.1.1. Täitja majutab Tellija infosüsteemi kahes füüsiliselt eraldi asukohas ja eraldi aadressidel paiknevas serveriruumis. Serveriruumid ja nendevahelised ühendused peavad paiknema Eesti Vabariigi territooriumil ja serveriruumide minimaalne nõutud geograafiline vahemaa on vähemalt 1 km. 8.1.2.Serveriruumid peavad olema spetsiaalselt ehitatud serverite majutuseks ja vastama E- ITS turbeastmele H ning standardile ANSI/TIA-942 (Telecommunications Infrastructure Standard for Data Centers) tasemele Tier 3, mööndusega, et varugeneraator ei pea olema dubleeritud. 8.1.3. Täitja tagab STAR infosüsteemile turvatud (SSL) välise andmesideühenduse kiirusega vähemalt 100 Mbps (megabitti sekundis) ja serveriruumide vahel füüsilise, turvatud (VPN) dubleeritud ühenduse kiirusega vähemalt 1 Gbps (gigabitti sekundis). 8.1.4.Andmesideühenduse (internetiteenuse) täitja peab olema Eesti Interneti SA poolt akrediteeritud. 8.1.5. Serverite ja serveriruumide vaheline ühenduse kiirus peab olema piisav, et tagada teenustaseme nõuded. Tõrke korral peab olema tagatud teenuste üle viimine teise serveriruumi teenuse nõuetele vastava aja jooksul. 33 8.1.6.Täitja serveriruumid peavad olema ühendatud Tellija serveriruumidega läbi VPN ühenduse kiirusega vähemalt 1Gb/s. Tellija serveriruumid asuvad serverimajutuskeskustes kahes erinevas lokatsioonis Eesti Vabariigis. 8.1.7. Täitja peab kasutama riistvara, millel töötab ainult Tellija infosüsteem. Pakutaval riistvaral ei tohi töötada samal ajal kolmandate osapoolte infosüsteemid. Samuti ei tohi olla kolmandatel osapooltel ligipääse pakutavale riistvarale ja operatsioonisüsteemile. 8.2. STAR infosüsteemi majutus- ja tugiteenuste üldised (miinimum) nõuded 8.2.1.Täitja kohustub tagama STAR infosüsteemi kasutamise võimaluse veebikeskkonnas ning lepingu kehtivuse perioodil kindlustama keskkondade nõuetekohase (hankedokumendis ja teenusepassis kirjeldatud) funktsioneerimise. 8.2.2. Täitja tagab STAR infosüsteemi järgmised majutus- ja tugiteenused: 8.2.2.1. Serverite, võrgu- ja salvestusseadmete ressursid. 8.2.2.2. Andmebaaside administreerimine ja monitooring. 8.2.2.3. Infrastruktuuri administreerimine ja monitooring. 8.2.2.4. Muudatuste haldus. 8.2.2.5. Konsultatsioonid ja parendusettepanekud. 8.2.2.6. Muud ühekordsed tegevused ehk lisatööd. 8.2.2.7. Teenuse lõpetamisega seotud tööd lepingu lõppemisel. 8.2.3.Infosüsteem peab olema majutatud kahes serveriruumis põhimõttel primary site ja failover site. Täitja peab kirjeldama, mis vahenditega tagatakse vajaduse korral teenuste üle viimine teise serveriruumi vastavalt käideldavusnõuetele. 8.2.4. STAR infosüsteemi Oracle andmebaaside vaheliseks andmete reaalajas sünkroniseerimiseks peab Täitja kasutatama Oracle Data Guard tarkvara. Oracle Active Data Guard tarkvara võetakse kasutusele vajadusepõhiselt, mille kasutuselevõtu tingimused lepitakse eraldi kokku teenuseosutajaga. 8.2.5. Tellija poolt sätestatud STAR majutuse mittefunktsionaalsed nõuded on kirjeldatud dokumendis TEHIK MFN. 8.2.6. Lepingu lõppedes kooskõlastatakse andmete uude majutuskeskkonda migreerimise ja seejärel hävitamise protsess Tellija ja Täitja vahel. Andmete ülekolimise ja hävitamise järgselt vormistab majutusteenuse osutaja akti, millega kinnitatakse, et andmed on hävitatud. 8.2.7. Teenuse osutaja vahetumisel vormistatakse andmete ülekolimise (migratsiooni) läbiviimise järgselt kolmepoolne üleandmis-vastuvõtu akt (andja, vastuvõtja, omanik). 8.2.8. Teenuse lõppedes, uude keskkonda andmete migratsiooni ettevalmistamine ja läbiviimisel abi osutamine (Täitja pädevuse ulatuses) on majutusteenuse osa ja ei ole eraldi tasustatav. 8.3. Nõuded andmete hoidmisele 8.3.1. Kõik infosüsteemis töödeldavad andmed (andmebaasis ja rakendusserverites) peavad paiknema keskses andmesalvestusmassiivis, mille andmemaht on lihtsasti juurde tellitav. Andmesalvestusmassiiv peab võimaldama andmete kloonimist töökeskkonnast töökeskkonna-eelsesse ja testkeskkonda. Andmesalvestusmassiivi mis tahes komponendi rike ei tohi põhjustada andmekadu. 8.3.2.Täitja peab maandama andmesalvestusmassiivi riknemise riski, mis võib Tellijale tähendada ulatuslikku teenusekatkestust. Täitja kirjeldab pakkumuses, kuidas ja mis vahenditega (sh SAN seadmed ja andmesalvestusmassiivid) on tagatud mainitud riskide maandamine. 8.4. X-tee turvaserverid ja liidetus 8.4.1.STAR infosüsteemis on kasutusel x-tee versioon 6 raamistik. 8.4.2. X-tee eraldi turvaserverid töökeskkonna, toodangueelse keskkonna ja testkeskkonna tagab Täitja. 34 8.4.3.Majutuskeskkonnas peab olema STAR jaoks seadistatud eraldi adapterserverid tootmis-, toodangueelse ja testkeskkonnale (arenduse x-tee päringud suunatakse testkeskkonda) STAR andmekogu päringute vahendamiseks telistele süsteemidele läbi x-tee. 8.4.4. Turvaserverid peavad olema valmis võimalikeks lisanduvateks liidesteks. 8.4.5. Teenuse täitja peab tagama vajalike muudatuste rakendamise x-tee turva – ja adapterserverites vastavalt lisanduvate või muutuvate liideste vajadusele. 8.4.6. Tootmis- ja testkeskkonnas peab olema paigaldatud x-tee andmevahetuse jälgimiseks RIA andmejälgija (https://github.com/e-gov/AJ ) 8.5. Muudatuste haldus 8.5.1. Arendusmuudatuste paigalduse õigustoodangu- ja toodangueelsesse keskkonda on ainult täitjal, kui ei lepita kokku teisiti. Test- ja Koolituskeskkonda võib paigaldusi teostada Teenuse täitja, arendaja ja Tellija. 8.5.2. Arendusmuudatused valmistab ette Arendaja ja edastab paketeeritult koos paigaldusjuhendiga paigaldamiseks toodangu- ja toodangueelsesse keskkonda. Paigalduspakettide, juhendite jm vajaliku informatsiooni edastamiseks ja paigaldustega seotud tegevuste dokumenteerimiseks, kasutatakse tellija tööde/projektide juhtimise keskkonda Jira. 8.5.3. Teenusetäitja paigaldab arendusmuudatusi lepingu raames vastavalt teenuse passile. 8.5.4. Toodangukeskkonda tehakse üldjuhul kuni 8 arendusmuudatuse tarnet kuus. Toodangueelsesse keskkonda kuni 16 arendusmuudatuse tarnet kuus. Test- ja koolituskeskkonda tehakse üldjuhul kuni 20 arendusmuudatuse tarnet kuus. Arendusmuudatusi töökeskkonda viiakse sisse väljaspool aktiivset tööaega. 8.5.5.Teenusetäitja peab vastavalt tellimusele käivitama parandusskripte vigade tuvastamiseks ja parandamiseks. 8.5.6. Arendusmuudatuste paigalduse aja kooskõlastab Täitja Tellijaga. 8.5.7. Täitja poolt arendusmuudatuse paigalduse ebaõnnestumisel vastutab Täitja süsteemi taastamise (rollback) eest. 8.5.8. Täitja uuendab toodangueelse ja testkeskkonna andmeid toodangukeskkonna andmetega Tellija tellimusel kui tarnejuhend seda ette näeb, kuid mitte rohkem kui punktis 8.5.4 kirjeldatud tarnete arv. 8.5.9. Täitja peab värskendama STAR statistikabaasi iga öö. Andmed laetakse STAR toodangukeskkonna andmebaasist. 8.5.10. Teenusetäitja tagab Tellija tellimisel arenduspartneritele ligipääsu test- ja toodangueelsele keskkonnale (andmebaasile, rakendusserverile) 2 tööpäeva jooksul. 8.5.11. Teenusetäitja tagab tellija tellimisel arenduspartneritele ligipääsu sulgemise test- ja toodangueelsele keskkonnale esimesel võimalusel, kuid mitte hiljem kui 2 tööpäeva jooksul. 8.5.12. Täitja peab kindlustama Tellija tellimisel (andme)halduritele / rakenduse administraatoritele lugemisõigustes (read only) ligipääsud kõikide STAR keskkondade serverite operatsioonisüsteemi konfiguratsioonifailidele ja andmebaasidele. 8.6. Varundamine ja teenuse taastamine 8.6.1.Täitja teeb majutuskeskkonnas olevatest süsteemidest regulaarselt varukoopiaid selliselt, et oleks tagatud teenuse passis sätestatud tingimuste täitmine. Täitja peab pakkumises kirjeldama, et milliste vahendite ja meetoditega tehakse varukoopiaid. 8.6.2. Varukoopiaid tehakse rakendusi seiskamata st, et tellija infosüsteemide käideldavus ei ole varukoopiate tegemise ajal mõjutatud. Varundust teostatakse väljaspool infosüsteemi tööaega. 8.6.3.Varukoopiad tuleb salvestada töökeskkonnast eraldi asuvatele andmekandjatele, mis asuvad erinevas füüsilises lokatsioonis. Varukoopiad ja nende allika vaheline andmevahetus peab olema krüpteeritud. 8.6.4. Täitja on kohustatud hoidma töökeskkonna varundatud andmeid järgnevalt: 35 8.6.4.1. Vähemalt kahe viimase kuukoopia. 8.6.4.2. Vähemalt neli viimast nädalakoopiat. 8.6.4.3. Vähemalt viis viimast tööpäevakoopiat. 8.6.5. Kuukoopiad on planeeritud kopeerida täiendavalt andmesaatkonda. Ajakava ning täpne tehniline lahendus töötatakse välja ja realiseeritakse koos eduka Täitjaga töö käigus lepinguperioodi alguses. 8.6.6. Andmekadu põhjustavat intsidenti käsitletakse kui erakorralist intsidenti. Erakorralise intsidendi korral on lubatud teenuse järjestikune seisak kuni 4 tundi ja summaarne seisak kuni 4 tundi nädalas ja kuni 6 tundi kalendrikuus. Pärast intsidendi lahendamist ja/või andmete taastamist esitab Täitja Tellijale detailse raporti, kus toob välja intsidendi põhjuse, mis põhjustas andmekadu ning meetmed selliste juhtumite vältimiseks või esinemise tõenäosuse vähendamiseks tulevikus. 8.6.7. Täitja töötab pärast iga keskkonna käivitamist ühe kuu jooksul välja vastava keskkonna taasteplaani ja esitab selle tellijale ülevaatamiseks ja kinnitamiseks. Taasteplaan peab sisaldama tegevuskava ja süsteemi üldist arhitektuuri kirjeldust visuaalsel kujul. Olulised infrastruktuuri komponendid (serverid, võrguseadmed jne) peavad olema kirjalikult lahti seletatud. 8.6.8. Täitja testib taasteplaani ajakohasust, kui toimub muudatus tellija infosüsteemiga seotud infrastruktuuris, kuid mitte harvemini kui üks kord aastas. Täitja kooskõlastab tellijaga testi läbiviimise aja ning esitab Tellijale pärast testi läbiviimist raporti, kus märgib ära taasteplaani vastavuse tegelikule olukorrale ja plaanist leitud puudused. Puudused tuleb kõrvaldada Tellijaga kokkuleppel mõistliku aja jooksul ning seejärel korraldada uus taasteplaani test. 8.7. Monitooring 8.7.1. Täitja tagab tsentraliseeritud tehnilise toe teenuse, mis on avatud 24 tundi ööpäevas ja seitse päeva nädalas, mille kaudu sooritatakse mitmesuguseid süsteemiga seotud järelevalve, muudatuste ja veahalduse menetlustoiminguid. 8.7.2. Tehnilise toe teenuseid osutatakse osana majutusteenustest, kus kõik süsteemihoiatused saadetakse tsentraliseeritud 24 tundi toimivale tehnilisele toele (sh võrgu, serveri ja rakenduse hoiatused). 8.7.3. Kõik keskkonnad peavad olema Täitja poolt monitooritud kogu lepinguperioodi vältel. 8.7.4. Täitja võimaldab Tellijale ja Tellija poolt nimetatud arendajale juurdepääsu monitooringuinfole või edastab monitooringuteated Tellija poolt etteantud meiliaadressile. 8.7.5. STAR logidele peab Tellijal olema ligipääs üle veebiliidese. Logide haldus peab töötama täitja majutuse keskkonnas (on premise). 8.7.6. Täitja installeerib vajadusel või Tellija palvel serveritesse täiendavad monitooringuagendid, mis koguvad infot serverite ja rakenduste seisundi kohta. Tellijal on kasutusel monitooringu süsteem Prometheus ja Grafana. 8.7.7. Täitja monitoorib serverites asuvate infosüsteemide tööd vähemalt järgmiste komponentide osas: 8.7.7.1. Andmesideühenduse olemasolu tellija serverite ja infosüsteemide vahel. 8.7.7.2.Serverite riistvaraliste komponentide töökorras olek. 8.7.7.3. Serverite protsessorite ja mälukasutus. 8.7.7.4.Kõvaketaste täituvus. 8.7.7.5. Süsteemi load (UNIX süsteemide puhul). 8.7.7.6. Andmebaasisüsteemi töökorras olek. 8.7.7.7. Andmebaasile eraldatud ressursside olemasolu. 8.7.7.8.Varukoopiate tegemise õnnestumine. 8.7.7.9. Monitooringusüsteemi töökorras olek. 8.7.8. STAR infosüsteemi rakenduste monitooring 36 8.7.8.1. Täitja poolset STAR rakenduse monitooringut ei nõuta. Täitjal peab olema valmisolek integreerida oma keskkonda Tellija poolt kasututavad rakenduse monitooringu vahendid (agendid vms). 8.7.9. Teenuse tehniline tugi 8.7.9.1. Täitja peab tagama kasutajatoe (ühtne kontaktpunkt, telefoni number, e- mail ja/või avalik portaal) vastavalt Teenuse passis toodud nõuetele. 8.7.9.2. Täitja peab teavitama Tellijat kriitilistest ja keskmise taseme vigadest koheselt ja asuma teenuse nõutud tingimustele vastavust taastama. 8.7.9.3. Kui tõrget ei ole võimalik teenuse passis nõutud aja jooksul lahendada, peab Täitja esitama põhjendused ja lahendusettepanekud. 8.7.9.4. Kriitilise taseme tõrkeks loetakse olukorda, kus STAR toodangukeskkonna tervikuna või oluliste komponentide, s.h andmevahetused teiste infosüsteemidega, kasutamine ei ole võimalik. 8.7.9.5. Keskmise taseme tõrkeks loetakse olukorda, kus STAR toodangukeskkonna kasutamine on oluliselt häiritud. 8.7.9.6. Madala taseme tõrkeks loetakse olukorda, kus STAR toodangukeskkonna kasutamine on võimalik, kuid on häiritud. 8.7.10. Aruandlus ja infovahetus 8.7.10.1. Täitja esitab majutusteenuse osutamise kohta igakuiselt ülevaate eelmise kuu kohta, mis sisaldab vähemalt järgmist informatsiooni: 8.7.10.1.1. Süsteemi komponentide käideldavus vastavalt teenuste passi nõuetele. 8.7.10.1.2. Perioodi vältel toimunud intsidendid koos algus- ja lõpuajaga, juurpõhjusega (kui on selgunud) ning kirjeldusega, kuidas neid edaspidi vältida. 8.7.10.1.3. Perioodi vältel tehtud plaanilised tööd. 8.7.10.1.4. Muudatuste logi. 8.7.10.1.5. Tellija poolt perioodi jooksul esitatud pöördumiste staatus, mis sisaldab ka lahendamata pöördumisi eelmistest perioodidest. 8.7.10.1.6. Täitja poolsed ettepanekud infosüsteemi ja majutuse parendamiseks ning teostamiskava. 8.7.10.2. Aruandlus peab olema Tellija kontaktisikutele kättesaadavaks tehtud veebi kaudu või e-kirja teel. 8.7.10.3. Täitja peab võimaldama Tellijal tellida tellimustööna täiendava tasu eest ühekordseid raporteid nt andmebaasi detailseid koormusraporteid. 8.7.10.4. Täitja ja Tellija vaheline töökeel on eesti keel. 8.8. Vajalikud ligipääsud Tellijale 8.8.1.Teenuse täitja ja Tellija võrkude vahele tuleb rajada VPN tunnel. Kogu osapoolte vaheline andmete liikumine peab toimuma läbi VPN tunneli. 8.8.2. Teenuse täitja peab kindlustama ühenduse Tellija SSO teenusele. 8.8.3.Teenuse täitja peab kindlustama Tellija andmeaida andmete laadimise süsteemile (Tellija teenus) ligipääsu STAR toodangukeskkonna andmebaasile. 8.8.4. Teenuse täitja peab kindlustama Tellija andmehalduritele otseligipääsud STAR kõigi keskkondade andmebaasidele. 8.8.5. Teenuse täitja peab pakkuma FTP (või samaväärne) serveri teenust, mille kaudu edastab Tellija installeerimiseks vajalikud paketid. 8.9. Nõuded monoliit arhitektuuri tehnilisele ülesehitusele 8.9.1.STAR Toodangukeskkond: 8.9.2. Kasutatavad rakendusserverid peavad olema eraldatud andmebaasiserverist; 8.9.3.Rakendusserverid peavad võimaldama koormuse jaotamist vähemalt kahe serveri vahel; 37 8.9.4. Igas rakendusserveris peab olema töösse rakendatud vähemalt kolm Java virtuaalserverit (JAVA Virtual Machine). 8.9.5. Keskkonnas peavad olema automaatse ümberlülitusega dubleerivad koormusjaoturid. 8.9.6. Koormusjaoturid peavad toetama lisaks koormuse jaotamisele ka SSL ühenduste termineerimist (SSL Offloading). 8.9.7. STAR toodangueelne- ja testkeskkond: 8.9.8. Toodangueelne keskkond (prelive) peab olema Toodangukeskkonnaga sarnase konfiguratsiooniga, kuid võib olla ilma dubleeriva rakendusserverita. 8.9.9. Rakendusserveris peab olema töösse rakendatud vähemalt kolm Java virtuaalserverit (JAVA Virtual Machine). 8.9.10. Test- ja koolituskeskkond võib olla ilma dubleeriva rakendusserverita ja vähendatud Java virtuaalserverite arvuga. 8.9.11. Majutuskeskkond peab olema kaitstud automaatse ümberlülitusega dubleeritud tulemüüriga; 8.10. Tellija tarkvara profiil STAR keskkondadele 8.10.1. Oracle Database 19g Standard Edition 8.10.2. Tellijal on olemas kahe (2) protsessori Oracle Standard Edition litsents koos toega. 8.10.3. Varukoopiate tarkvara valib Täitja teenuse nõuetest tulenevalt; 8.10.4. Toodangukeskkonna näidisarhitektuur on toodud punktis 11. 8.11.Litsentsid ja sertifikaadid 8.11.1. Serverite operatsioonisüsteemi tarkvarad peavad olema kaetud tootjapoolse tarkvaratoega lepingu perioodi vältel. Vajalikud litsentsid tagab Täitja. 8.11.2. Infosüsteemi tööks vajalikud litsentsid ja tootja toe tagab Tellija; 8.11.3. Süsteemi arengust tingitud vajaduse korral tagab infosüsteemi tööks vajalikud lisalitsentsid Tellija; 8.11.4. Turvalise ühenduse loomiseks vajalikud SSL sertifikaadid tagab Tellija; 8.11.5. Kõik keskkondade tööks vajalikud sertifikaadid ja nende kogused tuleb loetleda Täitja poolt ja esitada Tellijale tööks vajalike sertifikaatide soetamiseks. 9. Nõuded mikroteenuste arhitektuuri tehnilisele ülesehitusele 9.1. Kubernetese klastrid eraldi toodangu-. toodangueelse ja testkeskkondade jaoks. 9.2. Testikeskkonna klastrit võib vajadusel kasutada ka arenduskeskkonnana. Samaaegselt on testkeskkonna klastris STAR test ja arenduse rakendused. 9.3. Kubernetese klastreid peab saama laiendada lisaserveritega majutuse perioodi ajal; 9.4. Kubernetese klastri füüsilised serverid ei tohi olla jagatud teiste Teenuse täitja klientidega; 9.5. Soovituslik on kasutada Rancher Kubernetes Engine (RKE) Kubernetes distributsiooni; 9.6. Rancher kasutajaliides Kuberneteses rakenduste haldamiseks; 9.7. STAR rakendused Java ja JavaSckript keeltes; 9.8. PostgreSQL andmebaasid; 9.9. Redis andmebaasid; 9.10. RabbitMQ sõnumivahetus; 9.11.Minio S3 failisalvestus; 9.12. Matomo kasutajate käitumise monotooring; 9.13.Taristuteenused: 9.14. Kõrgkäideldav salvestusteenus klastri piires; 9.15. Sertifikaatide väljastus ja haldus (cert-manager); 9.16. Teenuseid kirjeldavad YAML failid paiknevad Tellija Gitlab lähtekoodi repositooriumis; 9.17. Docker konteinerite registrid paikneb Tellija juures. 10. Toodangukeskkonna näitlik arhitektuur 38 39 IV. Lisad 1. Tehnilise kirjelduse lisad on: 1.1. Teenuse pass SKAIS1; 1.2. Teenuse pass SKAIS2; 1.3. Teenuse pass STAR; 1.4. TEHIK MFN 2024. 40 Hankelepingu projekt Tervise ja Heaolu Infosüsteemide Keskus, registrikood 70009770, aadress Pärnu mnt 132, 11317 Tallinn, keda esindab põhimääruse alusel direktor Margus Arm (edaspidi tellija), ja Telia AS registrikood 10234957, aadress Mustamäe tee 3, 15033, Tallinn, keda esindab volikirja alusel Margus Danil (edaspidi täitja), edaspidi eraldi pool või koos pooled, sõlmisid raamlepingu nr 3-9/4197-1 alusel käesoleva hankelepingu (edaspidi leping) alljärgnevas: 1. Lepingu ese 1.1. Lepingu esemeks on tellimuse „Sotsiaalkindlustusameti infosüsteemide SKAIS ja STAR majutus- ja administreerimisteenus“ juures olevas tehnilises kirjelduses nimetatud tööd (edaspidi tööd). 1.2. Lepingu tööde maht on 14 kuud. 2. Töö üleandmise ja vastuvõtmise tingimused 2.1. Täitja annab töö üle hiljemalt 14 kuud alates lepingu sõlmimisest. 2.2. Töö vahetulemused antakse üle igakuiselt kuu 7.ndaks kuupäevaks. Täitja esitab tellija esindajale digitaalselt allkirjastatud aruande eelmise kuu tööde kohta, mis sisaldab loetelu teenusega seotud töödest ja tegevustest, süsteemi ressursside ja monitooringu näitajaid (kuised trendid serverite ja andmebaaside koormuse, võrguliikluse, vaba kettaruumi ja mälukasutuse kohta). 2.3. Ühekordsete, eraldi tellitud tööde kirjeldus sh nendele töödele kulunud aeg, näidatakse aruandes ja arvel eraldi reana. 2.4. Tellija vaatab töö üle vastavalt raamlepingu tingimustele. 2.5. Koos üle antava tööga annab täitja tellijale üle kõik tööde intellektuaalse omandi õigused vastavalt raamlepingus kirjeldatule. 2.6. Vajadusel esitab täitja tellijale soovitusi, märkuseid ja ettepanekuid teenuse kvaliteedi parendamise või nõutud taseme säilitamiseks vajalike tegevuste kohta. 3. Lepingu hind 3.1. Tellija tasub lepingu alusel tellitud tööde eest kuutasudena kokku 889 058,94(kaheksasada kaheksakümmend üheksa tuhat viiskümmend kaheksa eurot ja üheksakümmend neli senti) eurot käibemaksuta. 3.2. Kuutasu jaguneb: 3.2.1. SKAIS1 kuutasu hind on 5 261,32 (viistuhat kakssada kuuskümmend üks eurot ja kolmkümmend kaks senti) eurot käibemaksuta; 3.2.2. SKAIS2 kuutasu 47 342,89 (nelikümmend seitse tuhat kolmsada nelikümmend kaks eurot ja kaheksakümmend üheksa senti) eurot käibemaksuta; 3.2.3. STAR kuutasu 9 200,00 (üheksa tuhat kakssada) eurot käibemaksuta; 3.2.4. Kubernetese workerite halduse kuutasu 1 700,00 (tuhat seitsesada) eurot käibemaksuta; 3.3. Ühe töötunni hind on 75,00 (seitsekümmend viis) eurot käibemaksuta; Tasumine toimub aruande alusel. Ühekordsete lisatööde vajadus kooskõlastatakse eelnevalt lepingu kontaktisikute vahel. 3.4. Täitja esitab tellijale e-arve pärast töö üleandmise-vastuvõtmise akti allkirjastamist. 3. Poolte vahelised teated ja kontaktisikud 3.1. Teadete edastamisel ja kätte toimetamisel lähtutakse raamlepingu regulatsioonist. 3.2. Tellija kontaktisikuks lepingu täitmisel on Epp Laanepõld tel +372 7943 900, e-post [email protected] või tema asendaja. 3.3. Täitja kontaktisikuks lepingu täitmisel on Minni Nool, e-post [email protected] või tema asendaja. 4. Lõppsätted 4.1. Leping jõustub sellele poolte poolt allakirjutamise hetkest ja kehtib kuni poolte poolt oma lepinguliste kohustuste täitmiseni. 4.2. Lepingu dokumendid koosnevad riigihanke alusdokumentidest, sh lepingu lisadest, lepingu muudatustest ja pakkumusest. 4.3. Lepingu lahutamatuteks osadeks lepingu sõlmimise hetkel on järgmised dokumendid, mida ei allkirjastata koos lepinguga: 4.3.1. Lisa 1 - Tehniline kirjeldus; 4.3.2. TK Lisa 1 -Teenuse pass SKAIS1; 4.3.3. TK Lisa 2 – Teenuse pass SKAIS2; 4.3.4. TK Lisa 3 – Teenuse pass STAR; 4.3.5. Lisa 2 – Pakkumus; 5. Poolte allkirjad Tellija: Täitja: TK Lisa 1 - SKAIS1 (PKR) Teenuse pass Teenuse pass: SKAIS1 teenuse majutuskeskkond 1. Tingimus Kokku lepitud tingimus Serveriruum Kaks serveriruumi:  Primaarne  Sekundaarne Serveriruum Serveriruumid peavad paiknema EV territooriumil. Serveriruumide minimaalne nõutud geograafiline vahemaa 1 km. Serveriruumi standardile vastavus TIER3, mööndusega, et varugeneraator ei pea olema dubleeritud. Serveriruumi standardile vastavus E-ITS H turbeaste Teenuse pass: SKAIS1 Toodangukeskkond Teenuse mahunäitajad 2 Tingimus Kokku lepitud tingimus Maksimaalne tagatud üheaegsete sessioonide 500 sessiooni arv andmebaasis Toodangu andmebaasi andmemahu kasv aastas 350GB Varukoopiate tegemise minimaalne sagedus ja 7 korda nädalas full backup. Varundus meetod toimub öösel alates kell 00:01. Koopiat säilitatakse 7 päeva. Üldmääratlus 3 Tingimus Kokku lepitud tingimus Rakenduste tööaeg tööpäevadel (täiskoormusel) 8:00 - 17:00 E-ITS turvaklass K2T2S2 E-ITS turbeaste M Planeeritud arendusmuudatuste arv kuus 1 Käideldavus 4 Tingimus Kokku lepitud tingimus Hooldusaeg (katkestuseta) 22:00- 06:00 Planeeritud katkestusest etteteatamisaeg 24 tundi (vähemalt) Ühe planeeritud katkestuse maksimaalne 4 tundi kestvus töövälisel ajal Maksimaalne planeeritud katkestuste arv kuus Vastavalt kokkuleppele Lubatud planeerimata katkestuste arv kuus 2 Andmekao riski põhjustada võiva erakorralise 4h nädalas, 8h kuus intsidendi korral teenuse lubatud summaarne seisak Mõõtmisprotseduur Tõestatav monitooringu aruanne Tehniline kasutajatugi (ITabi) 5 Tingimus Kokku lepitud tingimus Suhtluskeel eesti Telefonitugi 08:00 – 17:00 Kõnedele vastamine 95% 60 sek. jooksul Üheaegsete kõnede arv - e-mail 24/7/365 Pöördumiste registreerimine Automaatteavitus Intsidentide teenustasemed 6 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, 24/7 90%-le reageeriti 0,5 tunni jooksul 100%-le reageeriti 2 tunni jooksul Prioriteet: keskmine, tööpäevadel 8:00 - 17:00 90%-le reageeriti 2 tunni jooksul 100%-le reageeriti 1 tööpäeva jooksul Prioriteet: madal, tööpäevadel 8:00 - 17:00 90%-le reageeriti 8 tunni jooksul 100%-le reageeriti 2 tööpäeva jooksul Tellimuste teenustasemed 7 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, 24/7 100% vastavalt tähtajale Prioriteet: keskmine, tööpäevadel 8:00 - 17:00 90% lahendati 3 kalendripäeva jooksul 100% lahendati 6 kalendripäeva jooksul Prioriteet: madal, tööpäevadel 8:00 - 17:00 90% lahendati 5 kalendripäeva jooksul 100% lahendati 10 kalendripäeva jooksul Teenuse pass: SKAIS1 Toodangueelne testkeskkond Teenuse mahunäitajad 8 Tingimus Kokku lepitud tingimus Maksimaalne tagatud üheaegsete sessioonide 100 sessiooni arv Toodangueelse keskkonna andmebaasi 350GB andmemahu kasv aastas Varukoopiate tegemise sagedus ja meetod Full backup kogu süsteemist - vajadusel. Üldmääratlus 9 Tingimus Kokku lepitud tingimus Tööaeg tööpäevadel 9:00- 17:00 E-ITS turvaklass K1T2S2 Arendusmuudatuste arv kuus Vajaduspõhine Käideldavus 10 Tingimus Kokku lepitud tingimus Hooldusaeg töövälisel ajal 17:00- 08:00 Planeeritud katkestusest etteteatamisaeg 48 tundi (vähemalt) Ühe planeeritud katkestuse maksimaalne Vajaduspõhine kestvus Mõõtmisprotseduur - Tehniline kasutajatugi (ITabi) 11 Tingimus Kokku lepitud tingimus Suhtluskeel eesti Telefonitugi - Kõnedele vastamine - Üheaegsete kõnede arv - e-mail 24/7/365 Pöördumiste registreerimine Automaatteavitus Intsidentide teenustasemed 12 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 8:00 - 17:00 - Prioriteet: keskmine, tööpäevadel 8:00 - 17:00 - Prioriteet: madal, tööpäevadel 8:00 - 17:00 - Tellimuste teenustasemed 13 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 8:00 - 17:00 100% vastavalt tähtajale Prioriteet: keskmine, tööpäevadel 8:00 - 17:00 90% lahendati 3 kalendripäeva jooksul 100% lahendati 6 kalendripäeva jooksul Prioriteet: madal, tööpäevadel 8:00 - 17:00 90% lahendati 5 kalendripäeva jooksul 100% lahendati 10 kalendripäeva jooksul Teenuse pass: SKAIS1 Testkeskkond Teenuse mahunäitajad 14 Tingimus Kokku lepitud tingimus Maksimaalne tagatud üheaegsete sessioonide 50 sessiooni arv Testkeskkonna andmebaasi andmemahu kasv 350GB aastas Varukoopiate tegemise sagedus ja meetod Vajaduspõhine Üldmääratlus 15 Tingimus Kokku lepitud tingimus Tööaeg tööpäevadel 9:00- 17:00 E-ITS turvaklass K1T1S1 Arendusmuudatuste arv kuus Vajaduspõhine Käideldavus 16 Tingimus Kokku lepitud tingimus Hooldusaeg töövälisel ajal Vajaduspõhine Planeeritud katkestusest etteteatamisaeg 24 tundi (vähemalt) Ühe planeeritud katkestuse maksimaalne Vajaduspõhine kestvus Lubatud maksimaalne planeerimata katkestuste Vajaduspõhine summaarne kogukestvus nädalas Mõõtmisprotseduur - Tehniline kasutajatugi 17 Tingimus Kokku lepitud tingimus Suhtluskeel eesti Telefonitugi - Kõnedele vastamine - Üheaegsete kõnede arv - e-mail 24/7/365 Pöördumiste registreerimine Automaatteavitus Intsidentide teenustasemed 1.1.18 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 8:00 - 17:00 - Prioriteet: keskmine, tööpäevadel 8:00 - 17:00 - Prioriteet: madal, tööpäevadel 8:00 - 17:00 - Tellimuste teenustasemed 1.1.19 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 8:00 - 17:00 100% vastavalt tähtajale Prioriteet: keskmine, tööpäevadel 8:00 - 17:00 90% lahendati 3 kalendripäeva jooksul 100% lahendati 6 kalendripäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 17:00 90% lahendati 5 kalendripäeva jooksul 100% lahendati 10 kalendripäeva jooksul TK Lisa 2 - SKAIS2 Teenuse pass Teenuse pass: SKAIS2 teenuse majutuskeskkond 1 Tingimus Kokku lepitud tingimus Serveriruum Kaks serveriruumi:  Primaarne  Sekundaarne Serveriruum Serveriruumid peavad paiknema EV territooriumil. Serveriruumide minimaalne nõutud geograafiline vahemaa 1 km. Serveriruumi standardile vastavus TIER3, mööndusega, et varugeneraator ei pea olema dubleeritud. Serveriruumi standardile vastavus E-ITS H turbeaste Teenuse pass: SKAIS2 Toodangukeskkond Teenuse mahunäitajad 2 Tingimus Kokku lepitud tingimus Maksimaalne tagatud üheaegsete sessioonide 500 sessiooni arv Ametnike portaalis Maksimaalne tagatud üheaegsete sessioonide 5000 sessiooni arv Avalikus portaalis Teenuse pakkuja poolt tagatud SKAIS2 toodangu 500GB andmebaasi andmemahu kasv aastas Minimaalne Pakkuja avalik interneti ühenduse 100 Mb/s kiirus Andmete varukoopiaklass (RPO) RPO on 15 minutit Varukoopiate tegemise minimaalne sagedus ja 1 kord kuus full backup kogu süsteemist, meetod 1 kord nädalas full backup kogu süsteemist, 6 korda nädalas incremental backup. Varundus toimub öösel alates kell 00:01 Arhiveerimine andmesaatkonda 1 kord kuus kopeeritakse kuu viimane varukoopia andmesaatkonda (krüpteeritult). Üldmääratlus 3 Tingimus Kokku lepitud tingimus Ametnike portaali tööaeg tööpäevadel 7:00 - 19:00 (täiskoormusel) Avalik portaali tööaeg tööpäevadel 6:00 – 02:00 (täiskoormusel) E-ITS turvaklass K2T2S2 E-ITS turbeaste M Käideldavus 4 Tingimus Kokku lepitud tingimus Hooldusaeg (katkestuseta) 22:00- 06:00 Planeeritud katkestusest etteteatamisaeg 48 tundi (vähemalt) Ühe planeeritud katkestuse maksimaalne 4 tundi kestvus töövälisel ajal Maksimaalne planeeritud katkestuste arv kuus Vastavalt kokkuleppele Ametnike portaali lubatud summaarne seisak kuni 2 tundi, kuid ühe katkestuse planeerimata katkestuse korral nädalas järjestikune ajaline pikkus ei tohi olla rohkem kui 30 minutit. Avaliku portaali lubatud summaarne seisak kuni 2 tundi, kuid ühe katkestuse planeerimata katkestuse korral nädalas järjestikune ajaline pikkus ei tohi olla rohkem kui 30 minutit. Lubatud planeerimata katkestuste arv kuus 2 Avalikus ja Ametnike portaalis Andmekao riski põhjustada võiva erakorralise 4h nädalas, 6h kuus intsidendi korral teenuse lubatud summaarne seisak Erakorralise intsidendi korral max taasteaeg RTO on 72 tundi (RTO) Mõõtmisprotseduur Pakkujapoolne tõestatav monitooringu aruanne Tehniline kasutajatugi 5 Tingimus Kokku lepitud tingimus Suhtluskeel eesti Telefonitugi 24/7 Kõnedele vastamine 95% 60 sek. jooksul Üheaegsete kõnede arv 3 e-mail või iseteenindus 24/7/365 Pöördumiste registreerimine Automaatteavitus Intsidentide teenustasemed 6 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, 24/7 90%-le reageeriti 0,5 tunni jooksul 100%-le reageeriti 2 tunni jooksul Prioriteet: keskmine, tööpäevadel 7:00 - 19:00 90%-le reageeriti 2 tunni jooksul 100%-le reageeriti 1 tööpäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 19:00 90%-le reageeriti 8 tunni jooksul 100%-le reageeriti 2 tööpäeva jooksul Tellimuste teenustasemed 7 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, 24/7 100% vastavalt tähtajale Prioriteet: keskmine, tööpäevadel 7:00 - 19:00 90% lahendati 3 kalendripäeva jooksul 100% lahendati 6 kalendripäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 19:00 90% lahendati 5 kalendripäeva jooksul 100% lahendati 10 kalendripäeva jooksul Teenuse pass: SKAIS2 Toodangueelne keskkond Teenuse mahunäitajad 8 Tingimus Kokku lepitud tingimus Maksimaalne tagatud üheaegsete sessioonide 100 sessiooni arv Ametnike portaalis Maksimaalne tagatud üheaegsete sessioonide 100 sessiooni arv Avalikus portaalis Teenuse pakkuja poolt tagatud SKAIS2 500GB toodangueelse keskkonna andmebaasi andmemahu kasv aastas Maksimaalne lubatud säilitusmaht Piiramata Pakkuja minimaalne interneti kiirus 100 Mb/s Andmete varukoopiaklass (RPO) 1 nädal Varukoopiate tegemise sagedus ja meetod 1 kord nädalas full backup kogu süsteemist Üldmääratlus 9 Tingimus Kokku lepitud tingimus Tööaeg tööpäevadel 9:00- 17:00 E-ITS turvaklass K1T2S2 Käideldavus 10 Tingimus Kokku lepitud tingimus Hooldusaeg töövälisel ajal 19:00- 07:00 Planeeritud katkestusest etteteatamisaeg 48 tundi (vähemalt) Ühe planeeritud katkestuse maksimaalne 24 tundi kestvus Lubatud maksimaalne planeerimata katkestuste 24 tundi summaarne kogukestvus nädalas Lubatud planeerimata katkestuste arv kuus 2 korda Avalikus ja Ametnike portaalis Erakorralise intsidendi korral max taasteaeg RTO on 168 tundi (RTO) Mõõtmisprotseduur Pakkuja poolne tõestatav monitooringu aruanne tellija nõudmisel Tehniline kasutajatugi 11 Tingimus Kokku lepitud tingimus Suhtluskeel eesti Telefonitugi 24/7 Kõnedele vastamine 95% 60 sek. jooksul Üheaegsete kõnede arv 3 e-mail või iseteenindus 24/7/365 Pöördumiste registreerimine Automaatteavitus Intsidentide teenustasemed 12 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 7:00 - 19:00 90%-le reageeriti 2 tunni jooksul 100%-le reageeriti 4 tunni jooksul Prioriteet: keskmine, tööpäevadel 7:00 - 19:00 90%-le reageeriti 4 tunni jooksul 100%-le reageeriti 1 tööpäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 19:00 90%-le reageeriti 8 tunni jooksul 100%-le reageeriti 2 tööpäeva jooksul Tellimuste teenustasemed 13 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 7:00 - 19:00 100% vastavalt tähtajale Prioriteet: keskmine, tööpäevadel 7:00 - 19:00 90% lahendati 3 kalendripäeva jooksul 100% lahendati 6 kalendripäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 19:00 90% lahendati 5 kalendripäeva jooksul 100% lahendati 10 kalendripäeva jooksul Teenuse pass: SKAIS2 Testkeskkond Teenuse mahunäitajad 14 Tingimus Kokku lepitud tingimus Maksimaalne tagatud üheaegsete sessioonide 50 sessiooni arv Ametnike portaalis Maksimaalne tagatud üheaegsete sessioonide 50 sessiooni arv Avalikus portaalis Teenuse pakkuja poolt tagatud SKAIS2 500GB testkeskkonna andmebaasi andmemahu kasv aastas Maksimaalne lubatud säilitusmaht Piiramata Pakkuja minimaalne interneti kiirus 100 Mb/s Andmete varukoopiaklass (RPO) 1 nädal Varukoopiate tegemise sagedus ja meetod Enne igakordset süsteemi muudatust või tarnet. Varundus toimub öösel alates 00:01 Üldmääratlus 15 Tingimus Kokku lepitud tingimus Tööaeg tööpäevadel 9:00- 17:00 E-ITS turvaklass K1T0S0 Käideldavus 16 Tingimus Kokku lepitud tingimus Hooldusaeg töövälisel ajal 19:00- 07:00 Planeeritud katkestusest etteteatamisaeg 24 tundi (vähemalt) Ühe planeeritud katkestuse maksimaalne 24 tundi kestvus Lubatud maksimaalne planeerimata katkestuste 24 tundi summaarne kogukestvus nädalas Lubatud planeerimata katkestuste arv kuus 2 korda Avalikus ja Ametnike portaalis Erakorralise intsidendi korral max taasteaeg RTO on 168 tundi (RTO) Mõõtmisprotseduur Pakkuja poolne tõestatav monitooringu aruanne tellija nõudmisel Tehniline kasutajatugi 17 Tingimus Kokku lepitud tingimus Suhtluskeel eesti Telefonitugi Tööpäevadel 8:00 – 19:00 Kõnedele vastamine 95% 60 sek. jooksul Üheaegsete kõnede arv 3 e-mail või iseteenindus 24/7/365 Pöördumiste registreerimine Automaatteavitus Intsidentide teenustasemed 18 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 7:00 - 19:00 90%-le reageeriti 2 tunni jooksul 100%-le reageeriti 4 tunni jooksul Prioriteet: keskmine, tööpäevadel 7:00 - 19:00 90%-le reageeriti 4 tunni jooksul 100%-le reageeriti 1 tööpäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 19:00 90%-le reageeriti 8 tunni jooksul 100%-le reageeriti 2 tööpäeva jooksul Tellimuste teenustasemed 19 Tingimus Kokku lepitud tingimus Prioriteet: kõrge, tööpäevadel 7:00 - 19:00 100% vastavalt tähtajale Prioriteet: keskmine, tööpäevadel 7:00 - 19:00 90% lahendati 3 kalendripäeva jooksul 100% lahendati 6 kalendripäeva jooksul Prioriteet: madal, tööpäevadel 7:00 - 19:00 90% lahendati 5 kalendripäeva jooksul 100% lahendati 10 kalendripäeva jooksul Lisa 2 - STAR Teenuse pass 1. Teenuse pass: STAR Toodangukeskkond Serveriruum Kaks serveriruumi  Primaarne  Sekundaarne Serveriruum Serveriruumid peab paiknema EV territooriumil. Serveriruumide minimaalne nõutud geograafiline vahemaa 1km. Serveriruumi standardile vastavus Serveriruum peab vastama E-ITS turvaklassi „H“ nõuetele. Serveriruumi standardile vastavus TIER3, mööndusega, et varugeneraator ei pea olema dubleeritud. 1.1. Teenuse mahunäitajad Jrk nr Tingimus Kokku lepitud tingimus 1.1.1. Maksimaalne lubatud üheaegne 800 kasutajat kasutajate/pöördumiste arv 1.1.2 Andmemaht majutusteenuse tsükli alguses ~3,5 TB 1.1.2. Maksimaalne prognoositav andmemahu kasv Juurdekasv aastas ~ 1 TB 1.1.3. Koormus 70 standardpäringut sekundis 1.1.4. Päringu kestus kohalikku andmebaasi Kuni 4 sek. 99,99% 1.1.5. Päringu kestus välisesse infosüsteemi Kuni 7 sek. 1.1.6. Maksimaalne lubatud säilitusmaht Piiramata 1.1.7. Minimaalne Pakkuja interneti ühendus 2 Gb/s 1.1.8. Andmete varukoopiaklass (RPO) RPO on 24 h 1.1.9. Varukoopiate tegemise sagedus ja meetod 1 kord nädalas full backup kogu süsteemist; 6 korda nädalas incremental backup (eelneva incremental backup-i suhtes) Varundus toimub öösel alates kell 00:01 1.2. Üldmääratlus Jrk nr Tingimus Kokku lepitud tingimus 1.2.1. Tööaeg (täiskoormusel) 9:00- 17:00 1.2.2. Tööaeg pooltele kasutajate 8:00-9:00 ja 17:00-19:00 1.2.3. Massandmevahetuse tööaeg väliste registritega, 19:00-07:00 andmeaita uute andmete edastamine 1.2.4. E-ITS turvaklass K2T2S2 1.2.5. E-ITS turbeaste M 1.2.6. Planeeritud arendusmuudatuste tarnete arv kuus 8 1.3. Käideldavus Jrk nr Tingimus Kokku lepitud tingimus 1.3.1. Hooldusaeg (katkestuseta) 22:00- 06:00 1.3.2. Planeeritud katkestusest etteteatamisaeg 48 tundi (vähemalt) 1.3.3. Ühe planeeritud katkestuse maksimaalne 4 tundi kestvus töövälisel ajal 1 1.3.4. Maksimaalne planeeritud katkestuste arv kuus Vastavalt kokkuleppele 1.3.5. Lubatud summaarne seisak planeerimata Kuni 2 tundi katkestuse korral nädalas 1.3.6. Lubatud planeerimata katkestuste arv kuus 2 1.3.7. Mõõtmisprotseduur Pakkujapoolne tõestatav monitooringu aruanne 1.4. Tehniline kasutajatugi Jrk nr Tingimus Kokku lepitud tingimus 1.4.1. Suhtluskeel eesti 1.4.2. Telefonitugi Tööaeg 1.4.3. Kõnedele vastamine 60 sek jooksul, 95% 1.4.4. Üheaegsete kõnede arv 3 1.4.5. e-mail või iseteenindus 24/7/365 1.4.6. Pöördumiste registreerimine Automaatteavitus 1.4.7. Pöördumisele reageerimisaeg ( peab olema 2 h jooksul, Tööaeg täidetud punktis 1.3.7 summaarne seisak nädalas 2 h) 2. Teenuse pass: STAR Test- ja koolituskeskkond 2.1. Teenuse mahunäitajad Jrk Tingimus Kokku lepitud tingimus 2.1.1. Maksimaalne lubatud (üheaegne kasutajate) Kuni 100 kasutajat pöördumiste arv 2.1.2. Maksimaalne prognoositav andmemaht Andmet mahu kasv kuni 10GB 2.1.3. Koormus 30 standardpäringut sekundis 2.1.4. Päringu kestus kohalikku andmebaasi Kuni 7 sek 99,99% 2.1.5. Päringu kestus välisesse infosüsteemi Kuni 10 sek 2.1.6. Maksimaalne lubatud säilitusmaht Piiramata 2.1.7. Pakkuja minimaalne interneti kiirus 2 Gb/s 2.1.8. Andmete varukoopiaklass (RPO) 1 nädal 2.2. Üldmääratlus Jrk nr Tingimus Kokku lepitud tingimus 2.2.1. Tööaeg tööpäevadel 9:00- 17:00 2.2.2. E-ITS turvaklass K1T0S0 2.2.3. Planeeritud arendusmuudatuste tarnete arv kuus 20 2.3. Käideldavus Jrk nr Tingimus Kokku lepitud tingimus 2.3.1. Hooldusaeg töövälisel ajal 19:00- 07:00 2.3.2. Planeeritud katkestusest etteteatamisaeg 48 tundi (vähemalt) 2.3.3. Ühe planeeritud katkestuse maksimaalne 24 tundi kestvus 2.3.4. Lubatud maksimaalne planeerimata katkestuste 24 tundi summaarne kogukestvus nädalas 2.3.5 Mõõtmisprotseduur Pakkuja poolne tõestatav monitooringu aruanne tellija nõudmisel 2 2.4. Tehniline kasutajatugi 2.4.1. Suhtluskeel eesti 2.4.2. Telefonitugi Tööaeg 2.4.3. Kõnedele vastamine 60 sek jooksul, 95% 2.4.4. Üheaegsete kõnede arv 3 2.4.5. E-mail ja/või iseteenindus 24/7/365 2.4.6. Pöördumiste registreerimine Automaatteavitus 2.4.7. Pöördumisele reageerimisaeg 2 h jooksul, Tööaeg 3. Teenuse pass: STAR Statistikakeskkond 3.1. Teenuse mahunäitajad Jrk Tingimus Kokku lepitud tingimus 3.1.1. Maksimaalne lubatud (üheaegne kasutajate) 10 pöördumiste arv 3.1.2. Maksimaalne prognoositav andmemaht Andmete mahu kasv kuni 80 GB 3.2. Üldmääratlus Jrk nr Tingimus Kokku lepitud tingimus 3.2.1. Tööaeg 9:00- 17:00 3.2.2. E-ITS turvaklass K1T2S2 3.3. Käideldavus Jrk nr Tingimus Kokku lepitud tingimus 3.3.1. Hooldusaeg (katkestuseta) 19:00- 07:00 3.3.2. Planeeritud katkestusest etteteatamisaeg 24 tundi (vähemalt) 3.3.3. Ühe planeeritud katkestuse maksimaalne 24 tundi kestvus 3.3.4. Lubatud maksimaalne planeerimata katkestuste 24 tundi summaarne kogukestvus nädalas 3.4. Tehniline kasutajatugi 3.4.1. Suhtluskeel eesti 3.4.2. Telefonitugi Tööaeg 3.4.3. Kõnedele vastamine 60 sek jooksul, 95% 3.4.4. Üheaegsete kõnede arv 3 3.4.5. E-mail ja/või iseteenindus 24/7/365 3.4.6. Pöördumiste registreerimine Automaatteavitus 3.4.7. Pöördumisele reageerimisaeg 2 h jooksul, Tööaeg 4. Teenuse pass: Toodangueelne keskkond 4.1. Teenuse mahunäitajad Jrk Tingimus Kokku lepitud tingimus 4.1.1. Maksimaalne lubatud (üheaegne kasutajate) Kuni 20 kasutajat pöördumiste arv 4.1.2. Maksimaalne prognoositav andmemaht Stardimaht 3,5TB ja juurdekasv aastas kuni 1TB 3 4.1.3. Koormus 30 standardpäringut sekundis 4.1.4. Päringu kestus kohalikku andmebaasi Kuni 7 sek 99,99% 4.1.5. Päringu kestus välisesse infosüsteemi Kuni 10 sek 4.1.6. Maksimaalne lubatud säilitusmaht Piiramata 4.1.7. Pakkuja minimaalne interneti kiirus 2 Gb/s 4.1.8. Andmete varukoopiaklass (RPO) 1 nädal 4.1.9. Varukoopiate tegemise sagedus ja meetod 1 kord nädalas full backup kogu süsteemist 4.2. Üldmääratlus Jrk nr Tingimus Kokku lepitud tingimus 4.2.1. Tööaeg 9:00- 17:00 4.2.2. E-ITS turvaklass K1T1S2 4.2.3. Planeeritud arendusmuudatuste tarnete arv 16 kuus 4.3. Käideldavus Jrk nr Tingimus Kokku lepitud tingimus 4.3.1. Hooldusaeg töövälisel ajal 19:00- 07:00 4.3.2. Planeeritud katkestusest etteteatamisaeg 48 tundi (vähemalt) 4.3.3. Ühe planeeritud katkestuse maksimaalne 24 tundi kestvus 4.3.4. Lubatud maksimaalne planeerimata katkestuste 24 tundi summaarne kogukestvus nädalas 4.3.5. Lubatud planeerimata katkestuste arv kuus 2 korda 4.3.6 Mõõtmisprotseduur Pakkuja poolne tõestatav monitooringu aruanne tellija nõudmisel 4.4. Tehniline kasutajatugi 4.4.1. Suhtluskeel Eesti 4.4.2. Telefonitugi Tööaeg 4.4.3. Kõnedele vastamine 60 sek jooksul, 95% 4.4.4. Üheaegsete kõnede arv 3 4.4.5. E-mail ja/või iseteenindus 24/7/365 4.4.6. Pöördumiste registreerimine Automaatteavitus 4.4.7. Pöördumisele reageerimisaeg 2 h jooksul, Tööaeg 5. Mõisted 5.1. Tööaeg - tööaeg on ajavahemik, millal teenus on kasutajatele kättesaadav. Massandmevahetuse tööaeg. Massandmevahetuse tööaeg väliste registritega, andmeaita uute andmete edastamine. 5.2. Standardpäring - kasutaja poolne tegevus/päring infosüsteemi kasutamiseks veebilehitseja kaudu. 5.3. Teenuse raport - monitooringusüsteemi põhine sõnaline aruanne tellija esindajale, mis sisaldab vähemalt järgmisi osiseid või peatükke: 5.3.1. perioodi jooksul registreeritud intsidendid; 5.3.2. tehtud süsteemiuuendused (sh tarkvara kui ka riistvara); 4 5.3.3. süsteemi jõudluse ja mahu monitooringunäitajad; 5.3.4. andmebaasistatistika (päringute arv, kestvus, SLA ületused); 5.3.5. andmebaasi mahu kasv võrreldes eelneva perioodiga ning üldmaht; 5.3.6. kokkuvõte varasematest intsidentidest, rakendatud meetmetest ja soovitused; 5.3.7. tellija pöördumiste arv ja pöördumise sisu. 5.4. Hooldusaeg - hooldussaeg on kokku lepitud tööajast üle jääv ajavahemik hooldustöödeks, mille jooksul teenus võib, kuid ei pruugi olla kättesaadav. 5.5. Maksimaalne lubatud üheaegne kasutajate arv - maksimaalne lubatud üheaegne kasutajate arv on teenust üheaegselt kasutavate kasutajate arv, mille korral on tagatud teenuse kvaliteetne toimimine. 5.6. Planeeritud katkestus - planeeritud katkestus on eelnevalt kokkulepitud ajavahemik, mille jooksul teenus ei ole kättesaadav. Planeeritud katkestused toimuvad ainult töövälisel ajal. 5.7. Planeerimata katkestus - planeerimata katkestus on tööajal aset leidev mitte plaanipärane katkestus teenuse toimimises. Planeerimata katkestuseks ei loeta olukorda, kus on häiritud vähese arvu kasutajate töö, kuid asutuses (sama hoone piires) on teenus kättesaadav. Planeerimata katkestus algab kui tööajal mingi teenus või funktsionaalsus ei toimi. Planeerimata katkestus lõppeb kui kõik teenused ja funktsioonid on taastatud. 5.8. Lubatud planeerimata katkestuse kogukestvus - lubatud planeerimata katkestuse kogukestvus on maksimaalne lubatud planeerimata katkestuste kestvus mingil ajaperioodil. 5.9. Kriitilisuse klass - kriitilisuse klass on teenustaseme taastamise maksimaalne ajakulu ning prioriteet mis järjekorras katastroofilises olukorras teenused taastatakse. 5.10. Lisatöö - tellija poolt tellitud ülesanded, mis ei kuulu hankeobjektiks oleva teenuse hulka: ühekordsed tööd ja teenus. 5 Versioon: 2.3 Dokument määrab kvaliteedi- ja mittefunktsionaalsed nõuded (MFN) uutele infosüsteemidele ning nende dokumentatsioonile. Dokumenti hoiavad ajakohasena Tervise ja Heaolu Infosüsteemide Keskuse (TEHIK) arhitektid. Dokumenti tuleb vaadata kui arenduste kvaliteedi- ja mittefunktsionaalsete nõuete põhidokumenti. Põhidokumendi ja viidatud dokumentide erisuste puhul tuleb lähtuda põhidokumendis kirjeldatust. Põhidokumendis viidatud TEHIKu koostatud dokumentide ja kolmandate osapoolte koostatud dokumentide erisuste puhul tuleb lähtuda TEHIKu dokumentides kirjeldatust. Kui mõnda nõuet ei ole võimalik või otstarbekas täita, tuleb selle mittetäitmise fakt ja põhjendus välja tuua pakkumuse esitamisel. Nõudeid tuleb järgida ka olemasolevate infosüsteemide versiooniuuendustel nii palju kui versiooniuuenduse käigus võimalik. Erandid tuleb kooskõlastada TEHIK'u vastutava arhitektiga kirjalikult taasesitataval kujul projektidokumentatsiooni juures. Nõude Nõude sisu Seletused Digiriigi Iseteenindus Veebid Karbitoode Koostamise Testimise läbi viib nr CFR eest vastutaja või kinnitab 1. Vastavus üldistele standarditele 1.1 Lahendus loomisel peab arvestama Kohustus- ja ootustasemel olevad nõuded tuleb V V Arendaja Projektijuht digiriigi ristfunktsionaalsed nõudeid. rakendada. Arhitekt https://koodivaramu.eesti.ee/e-gov/cfr Administraator Testija Erisused tuleb kokku leppida Tellija lahenduse Turvatestija arhitektiga. Infoturbe spetsialist Standardija 1.2 Lahenduse X-tee teenused peavad https://X-tee.ee/docs/live/xroad/ V V V Arendaja Testija vastama nõuetele. 1.3 Lahendus peab vastama Tulevase ja olemasolevate infosüsteemide platvormid V V V Arendaja Projektijuht Sotsiaalministeeriumi IT-profiilile. (rakendusserver, andmebaas, kolmanda osapoole Arhitekt komponendid) ja topoloogia peavad olema loodud kooskõlas hankes viidatud IT-Profiil versioonile. Administraator Testija Turvatestija Infoturbe spetsialist Standardija 1.4 Lahenduse kasutajaliides peab vastama https://tehik.ee/arendusjuhendid V V Arendaja Arhitekt dokumendis "Front-end arendusreeglid" Testija kirjeldatud reeglitele. 1.5 Rakendus peab olema kirjutatud https://eits.ria.ee/ V V V Arendaja Turvatestija arvestades selle lahenduse äriprotsesside Arhitekt ja andmete E-ITS ja ISKE turvaklassi nõudeid. 1.6 Veebirakenduse kasutajaliides peab https://www.w3.org/TR/WCAG22/ #39 V V V Arendaja Testija vastama vähemalt WCAG 2.2 tasemele CFR selgitus: WCAG 2.2 alates 05.10.2023 AA. 1.7 Veebipõhine kasutajaliides peab Valideerimiseks kasutatakse vastavaid validaatoreid: #38 V V Arendaja Testija ühilduma täielikult standarditega HTML https://validator.w3.org/ 5 ja CSS 3. Kui on tegu olemasoleva süsteemi edasiarendusega, siis tuleb järgida olemas olevat HTML ja CSS versiooni. 1.8 Allkirjastamisel tuleb kasutada Tellija https://www.tehik.ee/arendusjuhendid V V Arendaja Testija SiGA/SiVa vahendusteenust. Arhitekt 1.9 Rakendus peab probleemideta läbima Kui pole arenduses eraldi kokku lepitud teisiti, siis on #9 V V V Arendaja Turvatestija OWASP ASVS baasil põhineva testi. OWASP ASVS tasemeks 2 (https://owasp.org/www- #10 project-application-security-verification-standard/). Kinnise lähtekoodiga kommertstoote kasutamisel ei eeldata ligipääsu kinnisele lähtekoodile. Tellijapoolset turvatestimist teostab kolmas sõltumatu osapool. Selline esmane kolmanda osapoole turvatestimine tellitakse Tellija finantseeringul. Ilmnenud vigade korral ja peale nende parandamist peab järeltestimise rahaliselt kompenseerima arendaja, kui Tellija vastava nõudmise esitab. 1.10 Krüptoalgoritmite ja räsifunktsioonide Krüptoalgoritmite ja räsifunktsioonide kasutamisel #46 V V V Arendaja Arhitekt kasutamisel tuleb kasutada turvalisi tuleb järgida uusimat RIA kodulehel avaldatud Administraator algoritme ja võtmepikkuseid. krüptograafiliste algoritmide kasutusvaldkondade ja elutsükli uuringut. Turvatestija Värskeima uuringu leiab aadressilt https://www.ria.ee/amet-uudised-ja-kontakt/uudised- pressikontakt/uuringud-ja-analuusid#kruptouuringud Arendaja loodud lahenduse dokumentatsioonis (nt detailanalüüs vms) tuleb välja tuua kasutatavad krüpto- ja räsialgoritmid, nende võtmepikkused, kasutuskohad, sh sertifikaatide kasutuskohad. 1.11 Andmete edastus peab olema kaitstud Autentimist ei ole vaja ainult avalike andmete V V V Arendaja Turvatestija kasutades krüpteeritud ning vajadusel edastamisel (nt avaandmed). Arhitekt autenditud ja autoriseeritud kanalit. Autentimise mehhanism tuleb kokku leppida Tellijapoolse arhitektiga. 1.12 Infosüsteem peab kasutama serveri Kõik mahakirjutatavad ja talletatavad kellaajad tuleb #51 V V V Arendaja Arhitekt kellaaega. salvestada UTC ajatsoonis koos ajatsooni infoga. Administraator Kasutajatele mõeldud kuvades tuleb kasutada sirviku ajatsooni. Aja esitamisel tekstikujul lähtuda standardist ISO 8601. 1.13 Süsteemi edasiarendamisel/loomisel peab Süsteemi jõudlus peab vastama kokkulepitud V V V Arendaja Arhitekt arvestama selle võimaliku laiendamisega topoloogial eelanalüüsi ja lähteülesande käigus välja Testija nii andmemahtude kui ka kasutajate arvu toodud jõudlusnäitajatele. osas. 1.14 Rakendus peab olema tehniliselt Lahenduse arhitektuuris kasutada domeenist juhitud #21 V V Arendaja Arhitekt tükeldatud vastavalt loogilisele jaotusele. disaini ja mikroteenuste põhimõtteid. Saadud osised peavad olema eraldi Näiteks kui rakendus on eraldi turvakontekstidega versioneeritavad ja paigaldatavad. liidesed ametnikule ja kodanikule, peab rakendus olema jagatav kaheks eraldi liidesekomponendiks ning nende mõlema poolt kasutatavaks andmebaasiks. https://learn.microsoft.com/en-us/archive/msdn- magazine/2009/february/best-practice-an- introduction-to-domain-driven-design https://microservices.io/ 1.15 Avalike e-teenuste loomisel peab https://riigikantselei.ee/valitsuslogo #36 V V V Arendaja Testija arvestama valitsusasutusele kehtestatud visuaalse identiteedi stiilijuhiseid. 1.16 Avalike e-teenuste loomisel peab https://veera.eesti.ee/ #36 V V Arendaja Arhitekt arvestama Veera disainisüsteemiga. Näiteks kasutada ja laiendada E-Gov CVI projekti komponente: https://e-gov.github.io/cvi/ 1.17 Lahenduse loomisel peab arvestama https://digiriik.eesti.ee/koostoimeraamistik/ V V V Arendaja Arhitekt riiklikku koostoimeraamistikuga. Administraator 1.18 Aadressiandmete sisestamisel, kuvamisel Liidestatakse Maa-ameti ADS teenusega. #53 V V Arendaja Arhitekt ja hoidmisel tuleb lähtuda Vabariigi Esitluskihis on lubatud liidestada In-ADS teenusega Standardija Valitsuse määrusest "Aadressiandmete otsingu tarvis. Taustsüsteemides toimub liidestamine süsteem". Testija X-tee teenusega. https://www.riigiteataja.ee/akt/115072023005? leiaKehtiv 1.19 Tegevusalade andmete sisestamisel, https://www.riigiteataja.ee/akt/12910889?leiaKehtiv #54 V V Arendaja Standardija kuvamisel ja hoidmisel tuleb lähtuda https://emtak.rik.ee/EMTAK/ Testija Vabariigi Valitsuse 10. jaanuari 2008. a määrusest nr 11 "Klassifikaatorite süsteem" ja kasutada EMTAK infosüsteemis kehtivat klassifikaatorit. 2. Nõuded rakenduse arhitektuurile 2.1 Rakenduse, andmebaasi ja kolmanda Arendaja loodud lahenduse dokumentatsioonis (nt #7 V V V Arendaja Arhitekt osapoole komponendid peavad olema analüüs vms) peab olema välja toodud kasutatavate sellised, mille turbe uuenduste eluea lõpp komponentide nimetused ja versioonid. Lubatud on (Security Support) pole teadaolevalt kasutada ka tarkvara materjalide loendit (SBOM). vähem kui 2 aasta pärast. Versiooni eluea lõppu ei loeta võrdseks terve komponendi eluea lõpuga, st versiooni tugi võib aeguda, kui uus versioon on välja lastud. Jätkuarenduse puhul tuleb kaardistada eelneva arendusperioodi komponentide kaardistus. EOL komponentide kasutamisest tuleb teavitada Tellijapoolset arhitekti. CFR selgitus: Kahjuks täna paljud komponendid vaatavad tulevikku 1.5 - 2 aastat. Võimalusel valida komponendid, mis omavad pikka elueatuge, nn LTS versioon. 2.2 Rakendusserver peab võimaldama V V V Arendaja Administraator töötamist andmebaasiserverist eraldi serveril. 2.3 Rakendusserver peab olema Kasutaja sessioonid ei tohi olla rakenduserveri klastri V V V Arendaja Administraator kõrgkäideldav ja horisontaalselt õla põhised. skaleeruv. 2.4 Rakendust peab saama ilma Lahenduses ei tohi olla sisse kompileeritud V V V Arendaja Administraator ümberprogrammeerimata liigutada absoluutseid URI-sid. erinevate domeenide ja domeeni saitide vahel. 2.5 Rakenduse komponentide Rakendus peab neid sealt ka kasutama (mitte V V V Arendaja Administraator konfiguratsiooni peab olema võimalik kopeerima parameetreid käivitamisel kolmandatesse Testija ette anda käivitamisel. Konfiguratsiooni kohtadesse), logimise seaded võivad olla rakenduse muudatus peab olema teostatav ilma konfiguratsioonifailist eraldi ühes rakendust kompileerimata. lisakonfiguratsioonifailis (nt Log4j). Samuti on tungivalt soovituslik eraldi konfiguratsioonifailis hoida arendaja ja administraatori vastutusala parameetreid. Infosüsteem peab olema seadistatav konfiguratsiooniparameetrite(de) abil. Konfiguratsioonifailiks ei saa lugeda faili, kus hoitakse lisaks konfiguratsioonile ka muud programmikoodi. Näiteks konteinerlahenduste puhul peab kasutama keskkonnamuutuja põhiseid konfiguratsiooni parameetreid. 2.6 Rakenduse taaskäivitus, konfiguratsiooni Tavaline käivitusaeg ei tohi ületada 30 sekundit. V V V Arendaja Testija muutmine vms peab toimuma mõistliku Kui rakendus vajab indekseeritud sisu ja see pole aja jooksul. kättesaadav, siis peab rakendus väljastama selle kohta selge teate. 2.7 Lahenduse väliste osapoolte Kui rakendusel või mõnel selle komponendil on tihti V V Arendaja Arhitekt komponentide konfiguratsioonid peavad kasutatav teenus ning sellel teenusel on laetav Testija olema puhverdatud. konfiguratsioon, siis tuleb: Administraator laadida konfiguratsioon ühekordselt ja seda korduvkasutada; konfiguratsiooni automaatselt ja regulaarselt värskendada; regulaarsuse tarbeks peab saama määrata intervalli, millise aja järel või täpsed kellaajad, millal konfiguratsiooni värskendatakse; luua võimalus värskendada konfiguratsiooni käsitsi. Näiteks: digidoc4j teegi korral laetakse TSL nimekiri välisvõrgust puhvrisse, et vähendada koormust kolmandale osapoolele. OpenID konfiguratsioon 2.8 Kõik andmed, andmebaasid, SQL #50 V V V Arendaja Administraator skriptid, lähtekood ja rakendus peavad Testija kasutama UTF-8 või UTF-16 kodeeringut. 2.9 Rakendusserveri failisüsteemi ei tohi Näiteks objektide talletuseks kasutada objektide V V Arendaja Administraator salvestada midagi püsivaks kasutamiseks. talletamise lahendust (nt MinIO). 2.10 Ühest relatsioonilise andmebaasi Erinevate skeemide vahelised ühendused on keelatud. V V Arendaja Arhitekt andmetabelist teise viitamisel tuleb Peab kasutama REST/SOAP/AMQP liidestust. kasutada väliseid võtmeid (Foreign key). 2.11 Kõik välised võtmed (Foreign Key) Andmebaasis peab kasutama indekseid ja/või muid V V Arendaja Arhitekt peavad olema indekseeritud. meetmeid, et nõuded rakenduse jõudlusele oleksid täidetud ka tulevikus. (ühe, kolme, viie või 10 aasta pärast – vastavalt planeeritud kasutusajale). 2.12 Tuleb kasutada päringumuutujaid SQL päringute väljakutsumisel väljastpoolt V V Arendaja Arhitekt (Parameter Binding). andmebaasi peab kasutama päringumuutujaid, et vältida SQL vahemälu fragmentseerumist (When calling SQL code from outside the database, Parameter Binding should be used to prevent SQL cache fragmentation). 2.13 Kõigis andmebaasi tabelites peab olema Kasutada tuleb vastava andmebaasisüsteemi V V Arendaja Arhitekt defineeritud üks primaarvõti nimetamise parimaid praktikaid. 2.14 Andmebaasi objektide nimetused peavad Kasutada tuleb vastava andmebaasisüsteemi V V Arendaja Arhitekt olema sisulised ja andma aimu nende nimetamise parimaid praktikaid. otstarbest. 2.15 Andmebaasis defineeritakse üldjuhul Need õigused, mis on vajalikud ainult rakenduse baasi V V Arendaja Administraator kaks või enam kasutajat: loomiseks, on eraldi välja toodud ja tuleb peale installeerimist ära võtta. Karbitoodete puhul tuleb Rakenduse peakasutaja, kellena erisused läbi arutada Tellija arhitektiga. luuakse objektid ja skeemid. Rakenduse piiratud õigustega Lahenduse puhul, milles kasutatakse andmebaasi kasutaja, kellena pöördub versiooneerimist, tuleb kasutada mitut andmebaasi rakendusserver/rakendus. ühendust. Ennem rakenduse käivitumist teostatakse andmebaasi skeemi muudatused eraldi kasutajaga. Objektide loomiseks vajalikud õigused ja Rakendus kasutab enda põhitööks kasutajat, kellel ressursid on loetletud rakenduse puudub õigus andmebaasi skeemis muudatusi dokumentatsioonis. teostada. 2.16 Failide hoidmise asukoht lepitakse iga Failide hoidmine klassikalises andmebaasis on V V Arendaja Arhitekt kord kokku, kuid failid ja failide indeks kulukas ja seab kõrgendatud nõudmised ja piirangud peavad olema replikeeritavad teise andmebaasiserveritele. Lahenduse dokumentatsioonis asukohta. tuleb ära tuua failide hoidmise asukoht. Näiteks objektide talletuseks kasutada objektide talletamise lahendust. 2.17 Peab olema miinimumini viidud vajadus, Halduri haldustoimingud lepitakse Tellijaga kokku V V V Arendaja Testija et haldur teeb haldustoiminguid otse detailanalüüsi käigus. baasis. St rakendusel peab olema haldusliides, mille kaudu rakenduse haldur saab teha tavapäraseid haldustoiminguid. 2.18 Andmebaas peab toetama nii külm- kui Ei tohi kasutada teenuseid, mis välistavad andmebaasi V V Arendaja Arhitekt ka kuumvaru (peegeldamist) teise peegeldamist (nt "MSSQL filestream"). asukohta. 2.19 Sorteerimisreeglistik peab olema Eesti Näiteks PostgreSQL puhul et_EE. V V V Arendaja Testija tähestikule vastav. Tõusutundlikkus peab olema välja lülitatud. Diakriitiline (Accent) peab olema sisse lülitatud. 2.20 Kui infosüsteemid saadavad e-kirju, Saatja ja adressaadid, pealkiri ja sisu ei tohi olla V V V Arendaja Administraator peavad nad kasutama välist e-maili rakendusse kodeeritud, vaid on muudetavad serverit. Kirja saatmisel peab rakendus konfiguratsioonifaili kaudu. veenduma, et e-posti server võttis kirja Genereeritud kirjade puhul peab tagama kirjade vastu. E-kirjade vormindamine peab jälitatavuse (näiteks lisada X-päise kodeeritud kirje, järgima interneti standardeid (RFC milles on kirjeldatud, mis protsess/skriptifail/kasutaja 5322). kirja genereeris jms abistav info). 2.21 Konfiguratsiooniparameetrite nimed Näiteks : X_TEE_TURVASERVER, mitte XTTS või V V Arendaja Administraator peavad olema sisulised. Kui see ei ole viitenumber, mitte vk_seb jne võimalik, siis peab kõrval olema seletus. Testija 2.22 Infosüsteemides on eessüsteemid (front Koostöövõime raamistik 2011. Punkt 3.1. #23 V V Arendaja Arhitekt end; presentatsiooni kiht) ja Tagasüsteemide ülesanneteks on andmete haldamine #29 tagasüsteemid (back end; äriloogika kiht) ja võrguteenuste pakkumine. Tagasüsteemid ei tegele arhitektuuriliselt selgelt lahutatud ja lõppkasutaja autentimise ja autoriseerimisega. #64 eraldi paigaldatavad. Lõppkasutaja autoriseerimise tagavad eessüsteemid. Välise süsteemi tõrge tohib mõjutada ainult sellest Rakenduse äriloogika tuleb realiseerida otseselt sõltuvate kasutuslugude toimimist. Välise andmebaasist eraldi sõltumatus süsteemi taastumisel peab süsteem olema suuteline rakenduskihis. oma tööd jätkama taaskäivitamata. Andmebaas ei tohi sisaldada äriloogikat, mis muudab andmetabelites olevaid/sinna kirjutatavaid andmeid, va trigerid, mis tekitavad logi. 2.23 Konfiguratsioonifailid peavad olema Näiteks IIS: *.config , *.resources Apache: *.conf, V V V Arendaja Administraator vastavalt rakendusserveri tüübile .htaccess. vaikimisi kaitstud failid/objektid. Arendaja peab välja tooma konfifailide listi, kui neid on mitu. 2.24 Rakenduse failid, mida kasutaja näha ei Näiteks: IIS: Bin,App_Code, App_Data, V V V Arendaja Administraator tohi, peavad olema vaikimisi kaitstud App_Browsers, App_GlobalResources, kaustades ja ei tohi olla veebi App_LocalResources, App_Themes, juurkaustas. App_WebReferences, .git 2.25 Konfiguratsiooniparameetrite Kõiki parameetreid tuleks konfiguratsioonis kirjeldada V V Arendaja Administraator taaskasutus. Erinevaid sama sisuga vaid korra, dubleerimine on keelatud. Testija parameetreid ei tohi konfiguratsioonis eksisteerida. 2.26 Esitluskihist ei tohi pöörduda otse Tuleb rakendada vähemalt 3 tasandilist arhitektuuri V V V Arendaja Administraator andmebaasi poole. (three-tier architecture). Lõppkasutaja lokaalsesse seadmesse paigaldatud tarkvara loeme esitluskihiks. Ka sellisel juhul ei tohi teha lõppkasutaja seadmest otse ühendust andmebaasi. 2.27 Keskkonnapõhised muutujad peavad Näiteks WSDL ei tohi sisaldada viiteid V V V Arendaja Administraator olema konfiguratsiooniparameetritega arendusserveritele. Testija seadistatavad. 2.28 Eelistada tuleb tsentraalseid Kui rakendus realiseerib ise autentimist, siis peab #30 V V V Arendaja Arhitekt autentimislahendusi (nt Tellija SSO olema võimalik piirata ebaõnnestunud logimisi Testija lahendus). ajaühiku kohta (mobiil-ID, paroolid) ühelt IP- aadressilt. Eelistama peaks IP-aadressipõhist blokeeringut. Erandina Tellijaga kokkuleppel võib kasutada captchat või konto lukustamist. Blokeeringute ajavahemikku ja logimiskatsete arvu peab saama konfiguratsioonifailist muuta. Rakenduses realiseeritav autentimise lahendus peab olema põhjendatud ja omama kirjalikku taasesitatavat kokkulepet projekti dokumentatsiooni juures 2.29 Relatsioonilises andmebaasis võib Ei ole soovitav kasutada mingit V V Arendaja Arhitekt kasutada vaid ISO/IEC 9075 standardiga platvormispetsiifilist lahendust, mille üleviimine kaetud funktsionaalsusi. Lisaks ei tohi mõnele muule andmebaasiplatvormile ei ole kasutada ka sama standardi osas 13 võimalik. kirjeldatud funktsionaalsusi. ISO/IEC 9075 osa 13 spetsifitseerib Javas kirjutatud programmimoodulite kasutamist andmebaasis. 2.30 Uniform resource identifier (URI) pikkus Harilikult on piiriks 2048 tähemärki, kuid iga V V V Arendaja Administraator ei tohi ületada ühegi lahenduse poolt lahenduse puhul tuleb seda eraldi järele uurida Testija toetatava sirviku maksimaalset lubatud sõltuvalt lahenduse komponentidest. Asjakohased väärtust. viited: RFC 3986 ja RFC 7239. 2.31 Veebiteenuseid (REST, SOAP) pakkuv Näiteks WSDL puhul: Alajaotis V V V Arendaja Arhitekt rakendus peab olema üles ehitatud nii, et definitions/types/schema: see toetaks teenuste versiooneerimist complexType defineerimisel tuleb sellele lisada URL-i ja/või skeemi tasemel. any element. 2.32 Rakendus peab olema võimeline töötama Koormusjaoturi peal kasutatakse järjestikplaanurit V V V Arendaja Administraator koormusjaoturitega varustatud taristul. (Round Robin) päringute suunamisel. Samuti võidakse teostada koormusjaoturil TLS ühenduse lahtivõtmist ja uuesti kokkupanemist (SSL offload). 2.33 Sidusinfosüsteemide mittekättesaadavus Sidussüsteemi tõrge tohib mõjutada ainult sellest V V V Arendaja Administraator ei tohi segada rakenduse töötamist. otseselt sõltuvate kasutuslugude toimimist. Testija Sidusinfosüsteemidega Sidussüsteemi taastumisel peab süsteem olema andmevahetamisel tekkinud vead suuteline oma tööd jätkama rakendust taaskäivitamata. logitakse ja kasutajat hoiatatakse. Väliste liidestatud süsteemide tõrke korral ei tohi süsteem hanguda, vaid peab väljastama mõistliku (võimalikult lühikese) aja jooksul asjakohase veateate. Võimalusel tuleb kasutada asünkroonseid liideseid. 2.34 Automaatselt käivituvaid taustatöid peab Vajalik juhul, kui automaatsel käivitumisel on V V V Arendaja Testija saama käsitsi (taas)käivitada. tekkinud viga ja/või taustatöö on pooleli jäänud. Pärast vea põhjuse korrigeerimist peab saama taustatöö uuesti käivitada. Lahendusse on vaja luua taustatööde haldamiseks ja juhtimiseks võimekus, et võimaldada vastavates rollides olevatel inimestel lahendust hallata (nt peakasutaja või rakenduse administraator). 2.35 Kui ajastatult käivitatav taustatöö ei ole Kui lahendus töötab mitmel õlal, ei tohi tööd, mis ei V V Arendaja Administraator mõeldud käima paralleelselt, peab selles ole mõeldud paralleelselt käima, käivituda korraga Testija olema realiseeritud kontrollmehhanism, mitmel õlal. Peab rakendama lukustus põhimõtet. mis tagab, et sama taustatööd ei ole võimalik käivitada uuesti enne, kui eelmisena käivitatud instants on oma töö lõpetanud. 2.36 Uue toote arenduse ja olemasolevate V V V Arendaja Arhitekt infosüsteemide versiooniuuendustel kasutusele võetavate tehnoloogiate ja standardite valik tuleb kooskõlastada Tellijapoolse arhitektiga. 2.37 Rakenduse ühenduste (s.h. andmebaasi ja Implementeeritud peab olema vähemalt V V V Arendaja Arhitekt sidusinfosüsteemide ühendused) maksimaalsete ühenduste arvu piirang, päringu realiseerimisel tuleb kasutada ühenduste aegumise aeg (request timeout) ja ühenduse elususe puulimist (connection pooling). periood (keepalive). Rakenduse ühenduste tõrge tohib mõjutada ainult sellest otseselt sõltuvate kasutuslugude toimimist. Ühenduste taastumisel peab rakendus olema suuteline oma tööd jätkama taaskäivitamata. Tekkinud vead logitakse ja kasutajat hoiatatakse. 2.38 Rakenduse uuendustega kaasnevad Näiteks Liquibase või Flyway. V V Arendaja Administraator andmebaasi muudatused tuleb automatiseerida ja versioneerida. 2.39 Mitterelatsioonilises mudelis andmete Näiteks kui soovitakse kasutada NoSQL lahendusi V V V Arendaja Arhitekt hoiustamine tuleb eraldi kokkuleppida. püsivaks andmete talletuseks, tuleb see kokku leppida Tellijapoolse arhitektiga. 2.40 Mikroteenuste arhitektuuris vältida Iga teenus vastutab enda valdkonna andmete eest. Kui V Arendaja Arhitekt ebavajalikku andmete dubleerimist. on vajadus lisaandmete jaoks, on tal võimalik pöörduda teise teenuse poole. 2.41 Infosüsteemide vaheline andmevahetus https://www.ria.ee/riigi-infosusteem/andmevahetuse- #22 V V V Arendaja Arhitekt toimub üle X-tee. platvormid/andmevahetuskiht-X-tee https://www.riigiteataja.ee/akt/106082019017? leiaKehtiv Erandiks on lubatud päringud sama andmekogu raames. Sellisel juhul tuleb turvalisus tagada lahenduse loojate poolt. Kasutada kas mTLS või tõendipõhist autentimist. 3. Turvalisuse tagamisega seotud nõuded 3.1 Asutusesiseseks kasutamiseks mõeldud TEHIKu haldusala kasutajad ja nende rollid on V V V Arendaja Turvatestija rakenduse kasutajate autoriseerimist peab kirjeldatud Active Directory's. Võimalik on kasutada saama teha vastu TEHIKu keskset rollide pärimiseks TEHIK SSO teenust. autoriseerimisteenust. Täpsem tehniline lahendus leida koos TEHIKu poolse arhitektiga. 3.2 Kliendi ja serveri vahel peab autenditud V V V Arendaja Turvatestija kasutajasessioonide korral olema sessioon krüpteeritud HTTPS-protokolli kasutades. 3.3 Rakendus tohib kasutada vaid sessiooni V V Arendaja Turvatestija küpsiseid (cookies). Muude küpsiste kasutamine tuleb kokku leppida Tellijapoolse arhitektiga. 3.4 Kui andmebaasis olevate andmete E-ITS St kõik andmemuudatused peavad baasis säilima. #55 V V Arendaja Turvatestija tervikluse (I ehk integrity) turvaosaklass Andmete muutmisel andmeid ei kustutata, vaid #49 Arhitekt on S või VS, siis tuleb kõik andmebaasi tehakse uus kirje uute andmetega. Vana muudetakse kirjed/tabelid versioneerida. kehtetuks. Iga uus kirje peab sisaldama järgmist informatsiooni: viide kirjele, mille ta kehtetuks muutis (kui on) kasutaja, kes kirje lõi kirje loomise aeg sessiooni-ID (kui on olemas) X-tee ID (kui on olemas) Iga kehtetuks tunnistatud kirje peab omama järgmist informatsiooni; kasutaja, kes kirje kehtetuks tunnistas; kirje kehtetuks tunnistamise aeg. Täpne realisatsioon tuleb kokku leppida Tellija arhitektiga. 3.5 Rakendusega peab kaasas olema Testandmed peavad säilitama kõik toodangu andmete V Arendaja Arhitekt lahendus, mis suudab toota toodangu omadused (pikkuse, tüübi) ja omavahelised suhted. andmetest testandmed, mis ei võimalda Täpsem vajadus ja tegevusplaan tuleb koostada Tellija siduda konfidentsiaalset informatsiooni arhitekti ja tooteomanikuga. päris andmesubjektiga. 3.6 Rakendus ja selle komponendid peavad Arendaja arendab arenduskeskkonnas ja annab tarne V V V Arendaja Turvatestija võimaldama kasutada keskkondade üle Tellijale paigalduspakkidena. Tellija paigaldab lahusust. selle testkeskkonda ja testib ning seejärel paigaldab tarne toodangu keskkonda. Reaalseid andmekogu andmeid tohib töödelda üksnes toodangu keskkonnas. Üldjoones on kõik keskkonnad majutatud Tellija majutuses. 3.7 Rakendusse ja andmetele tohib olla St rakendustes ega andmebaasides ei tohi olla V V V Arendaja Turvatestija ligipääs vaid dokumenteeritud ja ligipääsemiseks teisi võimalusi. tellimuses kirjeldatud teid mööda ning dokumenteeritud autentimisprotseduure kasutades. 3.8 Rakendus ei tohi teostada X-tee päringut Kasutajaarvutitest otse X-tee päringute tegemine on V V V Arendaja Turvatestija otse kasutajaarvutist. arvutivõrgu tasemel kinni. 3.9 Veebipõhised välise veebilehega IIS puhul peab kasutama näiteks URL scan, apache V V V Administraator Turvatestija rakendused peavad kasutama vahendeid, puhul modsecurity või vastavat tööriista. Lubamatud kaitsmaks rakendust lubamatute päringud on kõik päringud, mis ei ole detailanalüüsi päringute eest. käigus vastavalt kasutusjuhtudele ette nähtud. Blacklistingu asemel tuleb kasutada whitelisting põhimõtet. 3.10 Kasutaja peab saama soovi korral Rakendus peab sisenemisel näitama pärast õnnestunud V V V Arendaja Turvatestija veenduda, kas keegi pole tema nime all sisselogimist eelmise õnnestunud sisselogimise aega. vahepeal sisse loginud. Kui on toimunud ebaõnnestunud sisselogimise katseid, siis peab ka kuvama, millal need toimusid, mitu neid oli ja mis IP-aadressilt pöörduti. Ebaõnnestunud logimiste katsete kuvamise nõue kehtib juhul, kui autentimine ja autoriseerimine lahendatakse rakenduses lokaalselt. 3.11 Kõigil rakendustel peab olema Aeg peab olema muudetav koos teiste V V V Arendaja Turvatestija konfigureeritav kasutajasessiooni konfiguratsiooniparameetritega. aegumise aeg. Nõue kehtib juhul, kui kasutatakse lahenduse sisest sessiooni haldust. 3.12 Lahenduses kasutatavate küpsiste sisu Eesmärk on kaitsta kasutaja andmeid, mis on V V Arendaja Turvatestija peab olema krüpteeritud talletatud sirviku küpsiste hulka. 3.13 LDAP lahenduse (nt Active Directory) Näiteks: konto on lukus, parool aegunud, konto #30 V V V Arendaja Turvatestija kasutamisel peab rakendus kasutama aegunud, paroolipoliitika jne. kontoga kaasnevaid piiranguparameetreid. 3.14 Tagada tuleb rakenduse rollide lahusus. Peakasutajal ja tavakasutajal on erinevad V V V Arendaja Turvatestija tööülesanded. Rollide/õiguste kirjeldus peab lähtuma detailanalüüsist ja kasutusjuhtudest. 3.15 Arendus peab olema orienteeritud Toodangukeskkonnas mittevajalikud V V V Arendaja Turvatestija toodangukeskkonnas toimimiseks. funktsionaalsused peavad olema eraldi juhitavad ja tavakäivitusel väljalülitatud. Näiteks eraldiseisva profiiliga Java arenduste puhul. (kasutuseta funktsionaalsus ja komponendid, mis on mõeldud testimiseks testkeskkonnas ja arendusabiks arenduskeskkonnas) 3.16 Kui rakenduse tervikluse turvaosaklass See tagab, et tõestusväärtusega andmeid ei saaks V V V Arendaja Turvatestija on T3, peavad tõestusväärtust omavad märkamatult kustutada. andmed olema kas ajatembeldatud, Konkreetne lahendus tuleb kokku leppida Tellija digiallkirjastatud või digitembeldatud arhitektiga. ning krüptoaheldatud. 3.17 Kui rakenduses on S3 Konkreetne lahendus tuleb kokku leppida Tellija V V V Arendaja Turvatestija salastatuse astmega andmeid, peavad arhitektiga. need olema nii transpordi ajal ja ka salvestatult alati krüpteeritult. 3.18 Rakendus peab võimaldama hõlpsalt Krüptograafiat kasutav rakenduskood ei tohi V V V Arendaja Turvatestija välja vahetada aegunud ja ebaturvalise nimeliselt välja kutsuda krüptograafilisi algoritme, krüptoalgoritmi. vaid peaksid seda tegema vahendavate vaheteekide kaudu üldiste funktsioonide järgi (nt krüpteerimine, dekrüpteerimine, signeerimine, signatuuri verifitseerimine jne). Dokumentatsioon peab kajastama üldist kirjeldust, kuidas vajadusel ebaturvaline krüptoalgoritm välja vahetada. Lisaks peavad eksisteerima vahendid juba olemasolevate krüpteeritud andmete ümberkrüpteerimiseks. 3.19 Rakenduse andmebaasi krüpteerimisega Andmebaasides kasutatavad V V V Arendaja Turvatestija seotud andmeväljad peavad olema krüpteerimisfunktsioonidest tingitud lisaväljad peaksid muudetava pikkusega. olema muudetava pikkusega, et formaati muutmata saaks kasutada teistsuguste parameetritega krüpteerimisalgoritme. 3.20 Lahendus peab olema kaitstud HTMLi OWASP soovitab kasutada DOMPurify lahendust #44 V V V Arendaja Arhitekt süstimiste eest. HTMLi saneerimiseks Turvatestija 4. Logimine 4.1 Logimiseks tuleb kasutada standardseid Näiteks Java raamistikku log4j, SLF4J, logback; V V V Arendaja Arhitekt komponente kogu logiahela ulatuses. transpordiks syslog, Elastic Beats; logi formaadiks Administrator JSON. Logi peab olema loetaval tekstilisel kujul, et logikirjeid saaks töödelda masinmõistetavalt ja inimloetavalt. 4.2 Peab kasutama logikomponenti ja peab Seletus: Näiteks peab saama muuta logimise taset ja V V V Arendaja Arhitekt olema võimalik juhtida logikomponendi logimise formaati. Administraator seadistusi. Testija 4.3 Logisündmused peavad olema loogiliselt Auditlogi (Seansilogi, tegevuslogi) - info #41 V V V Arendaja Arhitekt eristatavad. sisselogimiste, väljalogimiste ja seansi aegumiste Administraator kohta. Vigased sisselogimise katsed. Info õiguste suurendamise kohta. Peab olema logitud ka tühja või puuduvate parameetritega logimise katsed. Kogu informatsioon kasutajate tegevuste kohta koos tegevuse tüübi, seansi parameetrite (korreleerimaks seansi- ja tegevuslogi) ja kasutaja poolt esitatud sisendparameetritega (sh. väliste ressursside kasutamise kohta). Logida tuleb nii õnnestunud kui ka ebaõnnestunud tegevusi. Tehniline logi - rakendusserveri poolt loodud logi Vealogi - erinevate veaolukordade info Silumislogi - arendajate jaoks vajalik debug info 4.4 Logimine peab olema optimeeritud. Informatsiooni dubleerimist logides tuleb vältida, kui V V V Arendaja Arhitekt ei ole nõutud teisiti. Testija 4.5 Logides peab olema maksimaalselt üks V V Arendaja Administraator sündmus ühel real. Testija 4.6 Logikirje peab olema JSON formaadis. V V Arendaja Arhitekt Testija 4.7 Logiväljade nimed peavad olema Samatüübilised logiväljade nimed peavad olema V V Arendaja Arhitekt normaliseeritud ja tuleb rakendada ühtsed üle logi. Infoturbespetsialist Elastic Common Schema https://www.elastic.co/guide/en/ecs/current/ecs- spetsifikatsiooni. reference.html 4.8 Rakendus peab logima kasutaja edukat ja Logima peab ka autentimise ebaõnnestumise koos V V V Arendaja Arhitekt ebaedukat autentimist ja sessiooni põhjusega (vale juurdepääsumandaat, aegunud konto Testija lõpetamist, kasutaja IP-d ja jne). Logida tuleks IP-aadress, meetod ja kui võimalik autentimismeetodit. kasutajatunnus (mobiil-ID puhul telefoni number; ID- kaardi või Smart-ID puhul isikukood). Kui rakendus kasutab kasutajate autentimiseks välist autentimise/autoriseerimise vahendit, siis leppida eraldi kokku autentimise detailsus ehk mida kajastatakse autentimise/autoriseerimise vahendis ja mida rakenduses. 4.9 Üle terve logi peab olema kasutaja Tegevuste sidumiseks peab olema võimalik logikirjeid #17 V V V Arendaja Arhitekt sessiooni käigus tehtud tegevusi või sama siduda ühise välja abil. Selleks ei sobi kellaaeg, IP ega Testija sündmust võimalik siduda loogiliselt isikukood. Sobib näiteks unikaalne ID, mis ei tohi olla kokku. sessiooni ID, sest seda saaks logist välja lugeda ja rünnakuks ära kasutada. Võib olla sessiooni ID räsi koos transaktsiooni ID'ga. Konkreetne lahendus tuleb kokku leppida Tellija arhitektiga. 4.10 Andmete Logikirjes peab sisalduma piisavalt informatsiooni, et V V V Arendaja Testija loomise/vaatamise/muutmise/kustutamise vastata küsimustele kes?, mida?, kus?, kust?, millal?, Turvatestija tegevused peavad olema kajastatud kuidas? ja tulemus. logides. Logida tuleb ka päringud, mille Infoturbespetsialist Konkreetne detailsus ja tehniline lahendus tuleb vastus on puhverdatud. kokkuleppida Tellija arhitektiga. Näiteks on mõistlik luua audit teenus, mis annab vastavale rollile võimaluse näha ja auditeerida tegevusi. 4.11 Administraatorite ja haldurite poolt Lahendus peab tagama, et administraatorid/haldurid ei V V V Arendaja Infoturbespetsialist tehtavaid andmete vaatamised, saa andmete vaatamise, muutmise logimist ise (ka Administraator Testija muutmised sh kustutamised (ka otse tavakasutajate logimist) deaktiveerida või logisid baasis) tuleb logida. Muutmise puhul kustutada/muuta. tuleb logida nii uus kui ka vana väärtus. Konkreetne detailsus ja tehniline lahendus tuleb kokku leppida Tellija arhitektiga. Näiteks on mõistlik luua audit teenus, mis annab vastavale rollile võimaluse näha ja auditeerida tegevusi. 4.12 Süsteemsed logid ei tohi sisaldada Tulenevalt GDPRist ja logi sündmuse subjekti V V V Arendaja Arhitekt otseseid isikuandmeid. õigustest, ei tohi logide igapäevane analüüsimine ja Testija jälgimine riivata sündmuse subjekti õigusi. Turvatestija Näiteks kasutada kasutaja nime ja tunnuse asemel tema süsteemset ID'd. Lahendus peab sisaldama Infoturbespetsialist võimalust ID ümberpööramist reaalseteks andmeteks. Antud tegevus peab olema auditeeritav. Konkreetne detailsus ja tehniline lahendus tuleb kokkuleppida Tellija arhitektiga. 4.13 Kui parameetri väärtus on tühi, tuleb see Näiteks NULL V V Arendaja Testija logis märkida asendusväärtusega. 4.14 Logis tuleb kõik mittekuvatavad (non- Näiteks reavahetused -> \n, non-printable sümbolid - V V Arendaja Testija printable) sümbolid kodeerida. 0x00..0x1f, 0x7f..0xff. 4.15 Rakendus peab logima kõiki rakenduses Logi sisaldab minimaalselt vea tekkimise aega, V V V Arendaja Administraator tekkivaid tehnilisi vigu. veakoodi, veakirjeldust (stack trace, traceback vms), Testija võimalusel kasutaja andmeid, HTTP-, GET- ja POST- parameetreid ja nende väärtusi. Logimise detailsusrežiimi (info, warning, errog, debug) peab saama muuta. 4.16 Rakendus ei tohi X-tee päringuid V V V Arendaja Administraator salvestada rakenduse logis. Logis peab Testija olema X-tee tunnus (ID), et saaks siduda X-tee logiga. 4.17 Rakenduse funktsionaalsuse kirjeldusega Mida logitakse, kuidas sündmused on logis jagatud, V V V Arendaja Arhitekt tuleb luua logimise dokumentatsioon ja logiridade näited. Administraator loginäidised. Koos funktsionaalsuse arendamisega tuleb luua ka loodava Infoturbespetsialist funktsionaalsuse logimine ja selle dokumentatsioon. Dokumentatsioon peab sisaldama logis kasutatud klassifikaatorite kirjeldusi. 5. Testimine 5.1 Rakenduse kõik üleantavad versioonid Testitulemused tuleb edastada Tellijale koos rakenduse #12 V V V Arendaja Testija peavad enne Tellijale üle andmist olema üleandmisega. Vaata lisaks nõuet 5.2 ja 5.3. testitud. Testid peavad olema käivitatavad Tellija pideva integreerimise (CI) keskkonnas (nt Gitlab) ning olema dokumenteeritud, kuidas teostada testide seadistamist ja manuaalset käivitamist. 5.2 Lahendus peab olema minimaalselt 75% Käivitatakse Tellija pideva integreerimise (CI) #12 V Arendaja Arhitekt ulatuses kaetud automaatsete keskkonnas (nt Gitlab) ja kaetust raporteeritakse #35 Testija komponenditestidega (unit test). lähtekoodi analüsaatoris (nt SonarQube). 5.3 Lahendus peab olema minimaalselt 50% Käivitatakse Tellija pideva integreerimise (CI) #12 V Arendaja Arhitekt ulatuses kaetud automaatsete keskkonnas (nt Gitlab). #33 Testija vastuvõtutestidega. 5.4 Rakendusega peab olema kaasas skript Jõudlustestide täpne kirjeldus tuleb kokku leppida #12 V V Arendaja Arhitekt jõudlustestide tegemiseks. detailanalüüsi käigus. Arendaja peab koos #34 Administraator rakendusega tarnima skripti ja vajalikud tarkvaralised vahendid kokkulepitud jõudlustestide läbiviimiseks. Testija Jõudlustestide läbiviimine ei tohi nõuda Tellijalt omapoolset tarkvara arendamist, skriptide kirjutamist või litsentside ostmist. Jõudlustestid peavad olema käivitatavad Tellija pideva integreerimise (CI) keskkonnas (nt Gitlab) ning olema dokumenteeritud, kuidas teostada testide seadistamist ja manuaalset käivitamist. Konkreetne detailsus ja tehniline lahendus tuleb kokku leppida Tellijapoolse testija esindajaga. 5.5 Testimine toodangu andmetega on Testimiseks tuleb luua vastavad andmekooslused, et V V Arendaja Arhitekt keelatud. tagada tervik voo testimise võimekus. Administraator Testija 5.6 Enne lahenduse esmast tootesse Turbe testide teostamist ja tellimist koordineerib #9 V V Arendaja Arhitekt lansseerimist peab olema teostatud Tellijapoolne testija esindaja. Samuti tuleb kokku #10 Administraator turbetestid ja seal välja toodud leppida põhimõtted, millistel juhtudel turbe testi tuleb probleemid lahendatud. uuesti teostada. Testija Parendused ja lahendused tuleb kokku leppida Tellija arhitektiga. 6. Monitooring 6.1 Rakendusel peab olema masinloetav Testlehe kättesaadavus erinevatest arvutivõrkudest #16 V V Arendaja Arhitekt tervise testleht (health check) JSON peab olema konfigureeritav. Testleht peab uuendama Administraator kujul. ennast lehe pärimisel. Testleht peab sisaldama custom built rakenduse versiooni numbrit, standardsed komponendid (veebiserver, andmebaas, CMS'id jms) ei tohi oma versioone reeta. Samuti peab testlehel olema infot rakenduse (vajadusel tema erinevate osade) ja tema kõigi väliste liideste staatuse kohta (töötab, ei tööta). Rakenduse, andmebaasi ja liideste töökorda kontrollitakse testpäringute teel, mis tuleb Tellija arhitektiga kokku leppida. Testleht peab oma konfiguratsiooni võtma rakenduse üldisest konfiguratsioonist (baasistring, välised ühendused). Näiteks java Spring raamistiku puhul kasutada actuatori võimekust. 6.2 Rakendusel peavad olema elususe ja Näiteks java Spring raamistiku puhul kasutada #16 V Arendaja Arhitekt tööks valmiduse otspunktid. actuatori võimekust. Konteinerite orkestraatori kiht Administraator teostab nende järgi otsuseid. Antud lehekülgede sisuline poole peab kajastuma ka tervise testlehel. 6.3 Rakendus peab pakkuma monitooringu Tuleb rakendada OpenMetrics spetsifikatsiooni. #16 V V Arendaja Arhitekt lehte, kus leidub informatsioon Monitooringu leht peab välja kuvama ka testlehel Administraator rakenduse funktsionaalsuse toimimise kuvatud komponentide olukorda. kohta. Näiteks kui testleht kuvab infot, et andmebaasi ühendusega on probleeme, peab see kajastuma ka monitooringu lehel. Monitooringu lehte kasutame lahenduse jälgimiseks. https://openmetrics.io/ 7. Nõuded rakenduse lähtekoodile 7.1 Lähtekoodi kommentaarid peavad kõigis NB! Nõuet ei arvestata arendustarkvara poolt #2 V V Arendaja Arhitekt lahenduse kihtides (rakenduse enda kood, automaatselt genereeritavate koodilõikude puhul – andmebaas jne) olema kirjutatud inglise neid ei ole vaja tõlkida. Samuti ei rakendata nõuet keeles. kolmandate osapoolte poolt toodetud lähtekoodile – nt igasugu erinevad lahtise koodiga koodilõigud jms. Kui tegu on olemasoleva süsteemi edasiarendusega, siis peaks kommentaarides kasutama eelnevalt kasutatud keelt. 7.2 Lähtekoodi genereeritud Rakenduse kood peab olema piisavalt hästi #2 V V Arendaja Arhitekt dokumentatsioonid peavad olema selged, dokumenteeritud, et erialast haridust omav arusaadavad ja sisuliselt kirjeldama tarkvaraarendaja on võimeline süsteemile vastavat koodi, mille juures nad on. jätkuarendusi teostama. Lähtekoodist genereeritava Rakendama peab dokumenteerimisel dokumentatsiooniga tuleb katta kõik programmeerimiskeele parimaid praktikaid. avalikud (public) meetodid ja funktsioonid. Näiteks tarkvara, mis on kirjutatud Java keeles, peab kasutama javadoc põhimõtteid ja võimekust. 7.3 Muutujate, tüüpide ja funktsioonide Tuleb rakendada Clean Code põhimõtteid. Kui #2 V V Arendaja Arhitekt nimed peavad olema sisulised ja andma muutuja nimetus vajab kommentaari, siis pigem muuta aimu nende otstarbest. muutuja nimetust kommenteerimise asemel. Näiteks muutujate nimed peavad olema selged ja arusaadavad. Hea näide muutujast: elapsedTimeInDays Halb näide muutujast: etid 7.4 Koodis kasutatavad konstandid ja Nt Javas identifikaator --> ID V V Arendaja Arhitekt lühendid tuleb kirjutada suurte tähtedega, lähtudes kasutatava programmeerimiskeele parimast praktikast. 7.5 Koodis kasutatavaid konstante ei tohi V V Arendaja Arhitekt selle kasutamise kohta väärtusena hardcode'da – need tuleb defineerida muutujatena ja kasutada läbi nende. 7.6 Koodis defineeritud andmetüübid peavad N:Isik; Menetlus; jne. Andmebaaside V V Arendaja Arhitekt olema nimetava käände ainsuses. Kõik struktuurikirjeldustes/andmemudelis ei tohi kasutada andmemassiivid tuleb nimetada nimetava täpitähti. mitmuses (st igasugu collectionid, arrayd, jms). 7.7 Andmetabelites sisalduvad võõrvõtmed Kasutada tuleb konkreetse andmebaasisüsteemi V V Arendaja Arhitekt peavad nime järgi seostuma tabeli ja nimetamise parimaid praktikaid. Nt kui tegu on väljaga millele need viitavad. tabelitega ’Isikud’ ja ’Autod’, siis seos ’isiku autod’ oleks: Isikud.ID=Autod.Isik_ID 7.8 Andmebaasi väljade pikkused tuleb Selle asemel, et eraldada väljale x baiti, tuleb eraldada V V Arendaja Arhitekt kirjeldada sümbolites, mitte baitides. x tähemärki. (Instead of allocating x bytes of storage for the field, x chars of storage must be allocated). 7.9 Kui kokku pole teisiti lepitud, siis https://google.github.io/styleguide/ V Arendaja Arhitekt rakenduse kood peab olema kirjutatud Kui tarkvara keelel puuduvad Google stiili juhised, vastavalt Google stiili juhendile. siis tuleb need kokku leppida Tellija arhitektiga enne kodeerimist. 7.10 Koodi valideerimiseks kasutatakse Üleantavas koodis ei tohi olla kriitilisi ja kõrgemaid #10 V V Arendaja Arhitekt minimaalselt Tellija lähtekoodi probleeme. #40 analüsaatorit. IT profiil: Lähtekoodi analüüs 7.11 Kasutuses mitteolev kood tuleb Erandina on lubatud koodi osad, mis on valmis tehtud, V V Arendaja Arhitekt rakenduse lähtekoodist kõrvaldada. aga ei ole veel kasutusse rakendatud ja on peidetud nn. funktsionaalsuste lippude (feature flag) taha. 7.12 Arendamisel kasutatakse DRY ja SOLID http://en.wikipedia.org/wiki/Don%27t_repeat_yourself V V Arendaja Arhitekt printsiipe. http://en.wikipedia.org/wiki/SOLID_(object- oriented_design) 7.13 Üleantavas koodis ei tohi olla paroole, Kehtib ka siis, kui need on välja kommenteeritud. #28 V V Arendaja Arhitekt mida on kasutatud arenduse käigus. Kõik sellised paroolid tuleb asendada fraasiga #63 “<password>“. 7.14 Üleantavas koodis ei tohi olla Kui CVE ei ole lahenduses rakendatav ehk tegu on #10 V V Arendaja Arhitekt komponente, mille CVSS punktid on 7 ja lahenduse mõistes vale-positiivsega, siis võib kõrgemad ning CVE on rakendatav. komponendi uuendus lükkuda edasistesse etappidesse. Eeldusel, et tegu ei ole viimase üleantava tarne versiooniga. Partneri viimane üleantav versioon peab olema turbevigade vaba. Mõistlik on kõik CVE'd omavad komponendid uuendada või välja vahetada. Ajas võib mitme madalama punkti koosmõjul avalduda kriitiline turbeprobleem. 7.15 Üleantava lahendusega peab olema SBOM ehk tarkvara materjalide loend. Mõistlik on V V Arendaja Arhitekt kaasas viis SBOM genereerimiseks. SBOM genereerimine viia üheks järjepideva integratsiooni voo sammuks. SBOM publitseerimine ja analüüsimine tuleb kokku leppida Tellijapoolse arhitektiga. https://www.sbom.com/ 7.16 Tehniliste komponentide API'del Näiteks REST API'de puhul kasutada OpenAPI #20 V Arendaja Arhitekt eksisteerib automaatselt genereeritud spetsifikatsiooni. dokumentatsioon. https://www.openapis.org/ 8. Andmekvaliteet 8.1 Andmekorjel kasutatakse Vabatekstivälju tuleb vältida. #61 V V V Arendaja Arhitekt klassifikaatoreid ja loendeid, kus need on Testija olemas. 8.2 Tekstiväljad on mõistliku suurusega. Varchar N tähemärki, kus N on ratsionaalne kaalutlus, V V Arendaja Arhitekt kui suur lahter võib olla; vältida text/long-varchar kasutust, kui see pole hädavajalik. 8.3 Rakendus peab automaatselt eeltäitma Välja arvatud logimisvormi lahtrid autentimisel. V V Arendaja Testija kõik võimalikud andmeväljad, kui need Näiteks: kirje sisestamise kuupäev, kasutaja nimi, andmed on varem riigile esitatud või kui sünnikuupäev jne nende väärtused on võimalik automaatselt arvutada. 8.4 Lahenduses peab olema tagatud Kasutaja sama tegevuse kordamisel ei tohi tekkida V V Arendaja Arhitekt idempotentsus. lahendusse andmeid topelt. Testija Näiteks "salvesta" nupu korduval vajutusel ei tohi tekkida dubleeritud andmeridu. 8.5 Analüüsi tulemusena ja enne esimese Peab olema dokumenteeritud projekti põhi #58 V Arendaja Arhitekt arendusetapi algust peab infosüsteemi dokumentatsiooni juures. Dokument tuleb hoida kohta olema koostatud kontseptuaalne ajakohane. andmemudel olemi-suhte diagrammi (Entity Relationship Diagram, ERD) või klassidiagrammina olemite ja nende semantika kirjeldusega: teenuse nimi ja selle ärilne kirjeldus, tabeli nimi ja selles talletatavate andmete semantika ehk äriline kirjeldus. 8.6 Enne igat arendusetapi algust peab Peab olema dokumenteeritud projekti põhi #58 V Arendaja Arhitekt infosüsteemi kohta olema koostatud dokumentatsiooni juures. Dokument tuleb hoida loogiline andmemudel ehk olemi-suhte ajakohane. diagramm (ERD) koos kirjeldusega: skeemi ja olemite ehk tabelite nimi ja semantika, atribuutide ehk tabeli veergude kirjeldus, sh primaar- ja välisvõtmete kirjeldus: veeru nimi, andmetüüp, kohustuslik või mittekohustuslik (NULL/ NOT NULL), semantika ehk andmete tähendus. 8.7 Füüsiline andmemudel peab iga Igal skeemil, tabelil ja veerul on kommentaar #58 V Arendaja Arhitekt iteratsiooni lõpus või tarne tähtajaks selle andmekirjeldusega, mis vastab loogilise andmemudeli iteratsiooni või tarne ulatuses sisaldama kirjeldusele. lisaks ajakohasele kontseptuaalsele ja loogilisele andmemudelile ka andmekirjeldusi andmebaasis. 9. Kasutajaliides 9.1 Kasutajaliidese kõik disainiotsused V V V Arendaja Projektijuht peavad olema kooskõlastatud Tellijaga enne nende realiseerimist. 9.2 Veebipõhine kasutajaliides peab olema Minimaalselt Microsoft Edge, Mozilla Firefox, V V V Arendaja Testija kasutatav enamlevinud Chrome ja Safari arenduse testimise hetkel tootja poolt veebibrauseritega, sh nutiseadmetel toetatud versioonid. (Android, IOS). Täpsemad nõuded dokumendis "Front-end arendusreeglid". 9.3 Rakenduse värviskeemi ja logo Kui tegemist on struktuurfondide projektiga, on lisaks V V Arendaja Testija kasutamine peab vastama Tellija nõutud ka vastav SF sümboolika. Tellija ametlikud ametlikule visuaalsele identiteedile (CVI) CVI esitluspõhjad, logo kasutusjuhend ja kõik logod ja disainijuhistele (UIG). (ka jpg-na) küsida Tellijalt. 9.4 Kasutajaliidese kõik osad ja teated Kui soovitakse juurde eraldi ka muid keeli, siis see on V V V Arendaja Testija peavad olema eestikeelsed. spetsifitseeritud hankedokumentides. 9.5 Sisemiseks kasutamiseks tehtav Toetatud peavad olema töökohaprofiilis loetletud V V Arendaja Testija rakendus peab olema graafiliselt resolutsioonid. skaleeruv ja mugavalt kasutatav Ühegi nimetatud resolutsiooni korral ei tohi tekkida Tellija töökohaprofiilis loetletud horisontaalset kerimisriba. resolutsioonides. 9.6 Kasutajaliideses toiminguni (põhi- ehk Kõik rakenduse kasutajaliidesest tehtavad toimingud V V Arendaja Testija enamkasutatavad tegevused) tohivad üksteisest olla maksimaalselt 3 hiirekliki navigeerimiseks peab kehtima 3 kliki kaugusel. Toimingut ei pea nende 3 klikiga tehtud printsiip, väljalogimiseks 1 kliki saama. Väljalogimise nupp/link peab olema ühe kliki printsiip. kaugusel ja arusaadavas/intuitiivses kohas. 9.7 Kasutajaliides peab alati küsima V V V Arendaja Testija kinnituse andmete kustutamise ja massmuutmiste kohta kui just teisiti kokku pole lepitud. 9.8 Rakenduse kasutamisel tekkinud veale Veateated peavad olema sellised, mis võimaldavad IT- V V V Arendaja Testija peab kasutajaliides vastama kasutajale abil võimalikult lihtsalt tuvastada vea olemuse ja eestikeelse kasutajasõbraliku veateatega, asukoha. mis sisaldab ka vea koodi. Veateated peavad olema hallatavad. 9.9 Kasutajaliides peab olema ilma Uue keele lisamine peab olema teostatav V V Arendaja Testija rakenduse koodi muutmata tõlgitav teise konfiguratsiooni failist või administreerimisliidesest. keelde, v.a kui ei ole teisiti kokku lepitud. Konkreetne lahendus tuleb kokku leppida Tellija arhitektiga. 9.10 Rakenduse kasutajaliides peab teavitama Etteteavitamise aeg peab olema konfigureeritav. V V V Arendaja Administraator kasutajat ette sessiooni aegumisest. Testija 9.11 Kui vormile sisestatakse mahukaid Näiteks kui vorm koosneb paljudest väiksest V V Arendaja Testija andmevälju, peab kasutajaliides kokku andmeväljadest (nt taotlus), siis jagatakse vorm lepitud ajavahemike järel salvetama välja etappideks ning salvestatakse vastava etapi lõpus. sisu, et sessiooni aegumisel või võrgu katkestuse korral juba sisestatud andmed ei kaoks. 9.12 Interaktiivsete vormide puhul (näiteks V V Arendaja Testija faili üleslaadimine) ei tohiks lehe värskendamisega tegevust korrata (faili taas üles laadida, andmeid saata, avaldust esitada). 9.13 Esilehel (sisselogimata) ja pärast kasutaja Näiteks võimalikud teavitused: mingi süsteemi osa on V V Arendaja Testija sisselogimist peab olema lihtne võimalus vigane, tuli mingi uus funktsionaalsus, hetkel on teavitada kasutajat muudatustest või hooldus, uuendage isikuandmeid jne. probleemidest. Teavitus peab olema Mõistlik on hooldusteate võimekiust juhtida halduri poolt lihtsasti lisatav ja kasutajale taustteenuse abil. Näiteks läbi esitluskihi jaoks loodud märgatav. seadete REST liidese. 10. Dokumentatsioon 10.1 Lõppkasutajatele ja avalikkusele Erandiks võivad olla kolmanda osapoole V V Arendaja Projektijuht suunatud rakenduse dokumentatsioon komponentide (mis pole kirjutatud Tellija jaoks) Arhitekt peab olema kirjutatud eesti keeles. dokumentatsioon. Samuti võib erandiks olla väliste osapooltega seotud projektid. Erandid tuleb Administraator kooskõlastada Tellijaga enne dokumentatsiooni koostamist. Testija Infoturbe spetsialist 10.2 Lahendus kirjeldatakse RIHA määruse https://www.riigiteataja.ee/akt/12933746? #57 V Arendaja Projektijuht nõuete kohaselt. leiaKehtiv#para6 Projektijuht Tellija RIHA haldur 10.3 Rakenduse dokumentatsioon peab Dokumentatsioon peab olema versioneeritud, V V Arendaja Projektijuht vastama dokumendis "Nõuded muutmiskuupäevadega, autori nimedega, korrektse Arhitekt infosüsteemi dokumentatsioonile" keelekasutusega, selge struktuuriga. kirjeldatud nõuetele. Dokumentatsiooni detailsus peab olema piisav, et Administraator sõltumatu kolmas tehnliste IT baasteadmistega isik suudaks dokumendist vajalikke järeldusi teha (st Testija dokument peab olema arusaadav sellele isikule, kuid Infoturbe näiteks paigaldusjuhise järgi toimetades ei pea ta spetsialist ebaõnnestunud tarnele teostama veaanalüüsi). Täpsemad nõuded dokumendis "Nõuded infosüsteemi dokumentatsioonile". 10.4 Rakenduse dokumentatsioon peab Esialgne kirjete mahu hinnang peab tulema V V Arendaja Projektijuht sisaldama tabelite-andmete-logide mahu lähteülesandest, ning täpsustuma eel- ja detailanalüüsi Arhitekt kasvu arvestuslikku hinnangut rakenduse käigus. Mahuhinnang peab sisaldama ka logide sihipärase kasutamise korral ettenähtud säilitamise, arhiveerimise tähtaegu. Administraator arvu kasutajate poolt. (MB/GB kuus/aastas). Infoturbe spetsialist 10.5 Iga uue versiooniga peab alati välja Release notes peab kajastama kõiki muudatusi eelmise V V V Arendaja Projektijuht tooma versiooni muudatuse kirjeldused ja uue versiooni vahel. (release notes). 10.6 Arendaja loodud lahenduse V V Aremdaja Arhitekt dokumentatsioonis (nt detailanalüüs vms) Administraator tuleb välja tuua kasutatavad krüpto- ja räsialgoritmid, nende võtmepikkused, kasutuskohad, sh TLS sertifikaatide kasutuskohad. 11. Versioonihaldus 11.1 Kogu rakenduse testimiseks, koolituseks Arendajale antakse selleks õigused Tellija #1 V V Arendaja Arhitekt või implementeerimiseks üle antav versioonihalduse repositooriumi, kus ta peab hoidma Administraator lähtekood ja tarkvarapaketid peavad oma erinevaid versioone. Versioonihalduse olema versioneeritud. Kasutama peab repositooriumi juurdepääsutaotlus esitatakse Tellija Tellija versioonihalduse ja tehiste kasutajatoele läbi projektijuhi. (artifaktide) repositooriumi. 11.2 Arendaja peab veenduma, et teeb Hea tava on, et paralleelse arendamise puhul võetakse V V Arendaja Arhitekt muudatusi aktuaalsesse koodi. igal hommikul versioonihalduse repositooriumist Administraator viimane seis koodist. 11.3 Nii arendamisel kui ka hoolduslepingute Arendajale antakse selleks õigused Tellija tööde ja V V Arendaja Projektijuht korral kasutatakse Tellija tööde ja veahalduse keskkonda. veahalduse keskkonda. Veahalduse keskkonda juurdepääsutaotlus esitatakse Tellija kasutajatoele läbi projektijuhi. 11.4 Versioonihaldusesse muudatuste https://www.conventionalcommits.org/ V Arendaja Arhitekt üleslaadimisel kasutada üleslaadimissõnumis Conventional Commits stiili. 12. Paigalduspaketi kooste 12.1 Rakendus on versioneeritud kasutades A.B.C kujul, kus C on veaparandus, B on #15 V Arendaja Arhitekt semantilise versioneerimise põhimõtet. funktsionaalne uuendus, mis töötab ka vanematel Administraator integratsioonidel ja A on integratsioone potentsiaalselt lõhkuv uuendus. Versiooni suurt numbrit A kasutatakse ka API versiooni defineerimiseks. Lisasoovitus: Kui major versioon saab uuenduse, siis peavad vanema versiooniga teenused hakkama tagastama päises teavitust, et versioon on deprecated (nt. X-API-Deprecated). https://semver.org/ 12.2 Juhul kui versioonihalduse keskkond ei Räsialgoritmiks tuleb kasutada SHA256. Linuxi V V Arendaja Administraator paku paigalduspaketile kontrollsumma käsurealt kontrollkoodi koostamiseks: $ sha256sum (checksum) automaatset koostamist, siis filename [filename2] ... > kontrollkood.sum. koostatakse kontrollsumma arendaja poolt ja pannakse eraldi .sum failina tarnele kaasa. 12.3 Tarnitava lahenduse koosseisus üleantava Näiteks võib lahenduse paigalduspaketi koosteprotsess V V Arendaja Projektijuht lähtekoodiga peavad kaasas olema ette näha, et käivitada tuleb rida shell-käske või Administraator kirjeldused sellest paigalduspaketi võivad lahenduse koosseisus olla valmis (ant, ..) koosteks. koosteskriptid või mistahes muu moodus paigalduspaketi tekitamiseks. Eelistatud on kasutada Dockerfile ja Gitlab töövooge. 12.4 Kooste kirjelduste alusel valmiv Näiteks: kompileeritavate keelte puhul ei tohi V V Arendaja Arhitekt paigalduspakett tohib sisaldada ainult sisaldada lähtekoodi, kui see pole vajalik rakenduse Administraator minimaalse rakenduse käitamiseks käitamiseks. vajamineva failikomplekti. 12.5 Kooste kirjelduste alusel valmivat Näiteks ei tohi tekitada olukorda, kus rakenduse V V Arendaja Administraator paigalduspaketti peab olema võimalik jooksutamiseks uues serveris tuleb see tingimata just liigutada erinevate masinate vahel. sealsamas kokku kompileerida. 12.6 Rakenduse kõik sõltuvused peavad olema #4 V V Arendaja Arhitekt kompileerimisel saadavad Tellija tehiste repositooriumist. 12.7 Andmebaasi paigalduse skriptid ei tohi Administraator tahab veenduda skripti sisus. V V Arendaja Administraator olla kompileeritud. 12.8 Rakenduse lähtekoodi juures peab Tellijal peab olema võimalik suuri pingutusi tegemata V V Arendaja Arhitekt leiduma skriptid rakenduse keskkonnast ja keskkonna erinevusi vältides teha rakendusest sõltumatult (konteinerlahenduses) kokku paigaldatav pakk. kompileerimiseks. 12.9 Rakenduse lähtekoodi juures peab Vajadusel peab konteinerlahendus käivitama ka V V Arendaja Arhitekt leiduma skriptid rakenduse lokaalselt rakenduse muud sõltuvused (näiteks andmebaas). mõnes konteinerlahenduses (Docker) See on Täitjale uue meeskonnaliikme liitumise käivitamiseks. lihtsustamiseks ja Tellijale võimalus suuri pingutusi tegemata süsteemi testimiseks. 12.10 Paigalduspakett koostatakse Tellija #13 V V Arendaja Arhitekt pideva integratsiooni (continuous integration - CI) ja paigaldus (continuous deploy - CD) arendus keskkonnas. 12.11 Kubernetesel (K8s) orkestreeritavate https://helm.sh/ V V Arendaja Arhitekt lahenduste paigalduste jaoks tuleb luua Helmi jaoks kasutatava malli annab Tellijapoolne Arhitekt Administraator Helm chart. arhitekt. 12.12 Kubernetesel (K8s) orkestreeritavate https://kubernetes.io/docs/tasks/run- V V Arendaja Arhitekt lahenduste paigalduste jaoks tuleb luua application/horizontal-pod-autoscale/ Arhitekt Administraator vajalikud automaatsed laienemise reeglid. HANKIJA NIMI: Tervise ja Heaolu Infosüsteemide Keskus Pakkumusettepaneku nimetus: „Sotsiaalkindlustusameti infosüsteemide SKAIS ja STAR majutus- ja administreerimisteenus“ Käesolevaga teeb Tervise ja Heaolu Infosüsteemide Keskus (Hankija) Teile ettepaneku esitada pakkumus Sotsiaalkindlustusameti infosüsteemide SKAIS ja STAR majutus- ja administreerimisteenus teostamiseks raamlepingu nr 3-9/4197-1 alusel. Majutus- ja administreerimisteenuse hankeleping sõlmitakse tulenevalt vajadusest majutada ja administreerida sotsiaalkindlustusameti infosüsteeme SKAIS1, SKAIS2 ja STAR. Pakkumused tuleb esitada hiljemalt 18.07.2025 kell 10:00 e-posti aadressile [email protected]. Pakkumus tuleb esitada eesti keeles ja digitaalselt allkirjastatult pakkuja poolt. Pakkumus esitatakse Hankelepingu eseme tehnilises kirjelduses (lisa 1) toodud tööde teostamiseks. Alternatiivsete pakkumuste esitamine ei ole lubatav. Pakkumus peab olema jõus minimaalselt 30 päeva. Pakkumusena tuleb esitada: Pakkumusena esitatakse kinnitus SKAIS1, SKAIS2 ja STAR-i majutus- ja administreerimisteenuse ning sellega seotud lisatööde pakkumise kohta 14-kuulisel perioodil alates 01.08.2025, järgides raamlepingus, selle lisades ning teenuse passides sätestatud tingimusi. Raamlepingu alusel tellitakse lisatöid kuni 14-kuulisel perioodil. Töid teostatakse jooksva tunnihinna arvestuse põhiselt. Tööde ajaaruandes tuuakse välja tööde kirjeldused, pöördumiste ajad ning antakse ülevaadet serverite ressursside kasutusest aruandeperioodil. Majutus- ja administreerimisteenuse osutamine ning sellega seotud lisatööd teostatakse raamlepingus sätestatud teenuste kuutasu ning lisatöö tunnihinna alusel. Pakkujal ei ole õigust nõuda täiendavat tasu või väljamakseid. Küsimuste tekkimise korral palun võtke ühendust enne pakkumuse esitamise tähtaega aadressil [email protected]. Pakkumusettepanekuga koos edastatavad dokumendid: Lisa 1. Hankelepingu eseme tehniline kirjeldus; Lisa 2. Hankelepingu projekt.
Allikas: Tervise- ja heaolu infosüsteemide keskus dokumendiregister →
dokumendiregister.eeAsutusedEesti avalike dokumendiregistrite otsing · nimistu.ee andmetel