Changes for page 04. Technické informace
Last modified by Branislav ŠIŠKA on 2024/09/12 19:22
From version 7.1
edited by Branislav ŠIŠKA
on 2024/09/12 19:01
on 2024/09/12 19:01
Change comment:
There is no comment for this version
To version 6.1
edited by Branislav ŠIŠKA
on 2023/06/06 14:38
on 2023/06/06 14:38
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,24 +1,32 @@ 1 1 = {{id name="04.Technickéinformace-1.Hardware"/}}1. Hardware = 2 2 3 -Software Clindata běží na serverech umístěných v Institutu molekulární a translační medicíny (IMTM), Lékařské a stomatologické fakulty, Univerzity Palackého v Olomouci. Zařízení je zabezpečeno a pod dohledem globálního sledování. 3 +(% style="" %) 4 +Software Clindata běží na počítačovém clusteru umístěném v Institutu molekulární a translační medicíny (IMTM), Lékařské a stomatologické fakulty, Univerzity Palackého v Olomouci. Zařízení je zabezpečeno a pod dohledem globálního sledování. 4 4 6 +(% style="" %) 5 5 === {{id name="04.Technickéinformace-Popishardwaru"/}}**Popis hardwaru** === 6 6 7 -**Server zapojený ve virtualizaci proxmox**9 +**Servery** 8 8 9 -P aměť:48 GB11 +HPE DL385 Gen10 CTO Mod-X 8SFF Svr 10 10 11 -P rocesory:8jader13 +8x HPE 16GB 2Rx8 PC4-2933Y-R 12 12 13 - \\15 +2x HPE DL385 Gen10 AMD EPYC 7302 14 14 17 +2x HPE 240GB SATA RI SFF SC DS SSD 18 + 15 15 (% style="color: rgb(55,65,81);" %)**Datová úložiště** 16 16 21 +HP 3PAR data storage 700TB. 22 + 23 +HP EML tape library 24 + 17 17 (% style="color: rgb(55,65,81);" %)Objektové úložiště 18 18 19 19 **Firewall** 20 20 21 - FortiGate600E29 +HP F1000-S-EI VPN Firewall 22 22 23 23 **~ ** 24 24 ... ... @@ -37,8 +37,10 @@ 37 37 38 38 (% style="color: rgb(55,65,81);" %)(Aktuální znamená poslední dostupná verze daného prohlížeče) 39 39 48 +(% style="" %) 40 40 === {{id name="04.Technickéinformace-Programovacíjazyk"/}}Programovací jazyk === 41 41 51 +(% style="" %) 42 42 Hlavním programovacím jazykem používaným pro vývoj aplikace Clindata je Java 8. Další technologie používané při vývoji jsou: 43 43 44 44 * Spring Framework v5. ... ... @@ -52,16 +52,22 @@ 52 52 * SQL 53 53 * Oracle database 54 54 65 +(% style="" %) 55 55 === {{id name="04.Technickéinformace-Operačnísystém"/}}Operační systém === 56 56 57 -Operační systém nainstalovaný na produkčních serverech je RedHat Enterprise Linux 9.4. 68 +(% style="" %) 69 +Operační systém nainstalovaný na produkčních serverech je RedHat Enterprise Linux 7.4. 58 58 71 +(% style="" %) 59 59 === {{id name="04.Technickéinformace-Proxyserver"/}}Proxy server === 60 60 74 +(% style="" %) 61 61 Jako brána z vnějšího světa do vnitřní aplikace běžící na produkčním serveru se používá Apache HTTP Server. 62 62 77 +(% style="" %) 63 63 === {{id name="04.Technickéinformace-Aplikačníserver"/}}Aplikační server === 64 64 80 +(% style="" %) 65 65 Aplikace ClinData běží na Apache Tomcat, což je open-source Java Servlet Container vyvíjený nadací Apache Software Foundation. 66 66 67 67 **~ ** ... ... @@ -70,12 +70,15 @@ 70 70 71 71 === {{id name="04.Technickéinformace-DatabázeClindata"/}}Databáze Clindata === 72 72 89 +(% style="" %) 73 73 Databáze používaná pro ukládání dat ze softwaru Clindata je Oracle Database (obvykle označovaná jako Oracle RDBMS), kterou vyvíjí společnost Oracle Corporation. Verze databáze je 12.1. Standard Edition. 74 74 92 +(% style="" %) 75 75 Oracle databáze běží na odděleném serveru založeném na Linuxu, který je chráněn firewallem před vnější sítí (Internetem). Tento databázový server není přístupný zvenčí organizace, ale pouze ze zapsaných vnitřních serverů (aplikační a záložní servery). 76 76 77 77 = {{id name="04.Technickéinformace-4.Zálohy"/}}4. Zálohy = 78 78 97 +(% style="" %) 79 79 Existují více úrovní archivace dat, které zajišťují bezpečnost dat a rychlé obnovení databáze. Data jsou archivována na úrovni databáze a operačního systému. 80 80 81 81 1. Zálohy na úrovni databáze ... ... @@ -116,14 +116,19 @@ 116 116 117 117 === {{id name="04.Technickéinformace-Zabezpečenépřipojení"/}}Zabezpečené připojení === 118 118 138 +(% style="" %) 119 119 Jelikož aplikace Clindata je webová aplikace, je nezbytné zajistit zabezpečenou komunikaci mezi serverem a klientovým počítačem. To je dosaženo pomocí komunikačního protokolu HTTPS, který je šifrován pomocí protokolu Transport Layer Security (TLS). Tento protokol je široce používán pro veškeré bezpečné transakce na internetu (platby, e-maily atd.) a je považován za bezpečný a nedekódovatelný. Chrání proti útokům prostředníka. Komunikace bez bezpečnostní vrstvy (HTTP) může být narušena útočníky, kteří ji mohou odposlouchávat nebo měnit. 120 120 141 +(% style="" %) 121 121 === {{id name="04.Technickéinformace-Přesměrovánízabezpečení"/}}Přesměrování zabezpečení === 122 122 144 +(% style="" %) 123 123 Všechny požadavky uživatele přicházející prostřednictvím nezabezpečeného protokolu HTTP jsou automaticky přesměrovány na zabezpečený protokol HTTPS. Veškerá komunikace mezi klientem a serverem je zabezpečena a není možné se připojit k softwaru Clindata prostřednictvím nezabezpečeného spojení. 124 124 147 +(% style="" %) 125 125 === {{id name="04.Technickéinformace-Certifikát"/}}Certifikát === 126 126 150 +(% style="" %) 127 127 Pro zabezpečenou komunikaci je vyžadován certifikát uložený na webovém serveru. Certifikát musí být podepsán důvěryhodnou certifikační autoritou. Server Clindata používá certifikát, který je digitálně podepsán autoritou TERENA. 128 128 129 129 = {{id name="04.Technickéinformace-06.Autenzizaceaautorizace"/}}06. Autenzizace a autorizace = ... ... @@ -130,8 +130,10 @@ 130 130 131 131 === {{id name="04.Technickéinformace-Správauživatelů"/}}Správa uživatelů === 132 132 157 +(% style="" %) 133 133 Všichni uživatelé používající aplikaci Clindata musí být registrováni před přihlášením. Není možné získat neoprávněný přístup k serveru ani pro demonstrační účely. Existuje specializovaná aplikace pro správu uživatelů - nástroj IMTM Admin. 134 134 160 +(% style="" %) 135 135 Nástroj Admin je zodpovědný za: 136 136 137 137 * Správu institucí, společností, nemocnic a jejich oddělení. Může existovat neomezený počet úrovní organizací, například univerzita může mít strukturu univerzita-fakulta-oddělení-laboratoř. Každá úroveň organizace může získat odlišnou sadu oprávnění a rolí. Správa uživatelů. Každý uživatel je identifikován e-mailovou adresou jako přihlašovacím jménem a heslem. ... ... @@ -138,10 +138,13 @@ 138 138 * Uživatelé jsou přiřazeni ke svým organizacím. Uživatelé mohou pracovat na více projektech s různými rolemi. To je umožněno pomocí uživatelských profilů. Počet profilů pro jednoho uživatele není omezen. Každý profil může mít odlišnou sadu oprávnění a rolí. 139 139 * Správa rolí a profilů. 140 140 167 +(% style="" %) 141 141 Databáze Admin s uživatelskými údaji je uložena v Oracle databázi jako samostatné schéma. Přístup k tomuto schématu je omezen pouze pro správce. Server s Oracle databází je oddělen firewallem od veřejné sítě a není přístupný z internetu. 142 142 170 +(% style="" %) 143 143 Nový účet uživatele může být vytvořen pouze administrátorem. Uživatel nemá možnost vytvořit si účet sám. 144 144 173 +(% style="" %) 145 145 Následující kroky musí být dodrženy při vytváření nového účtu: 146 146 147 147 * Nový uživatel požádá vlastníka projektu o vytvoření nového účtu. ... ... @@ -150,33 +150,45 @@ 150 150 * Vlastník projektu zkontroluje nastavení účtu a schválí ho. 151 151 * Nový uživatel obdrží přihlašovací údaje a může se přihlásit. 152 152 182 +(% style="" %) 153 153 === {{id name="04.Technickéinformace-Centrálníautentizačníslužba(CAS)"/}}Centrální autentizační služba (CAS) === 154 154 185 +(% style="" %) 155 155 Aplikace Clindata musí být propojena s daty z IMTM Admin k ovládání účtů, rolí a oprávnění. To se provádí integrací technologie CAS do softwaru ClinData. Technologie CAS se skládá z CAS serveru a CAS klienta. CAS server je zodpovědný za ověřování uživatelů a poskytování přístupu k aplikacím. CAS klienti chrání aplikace CAS a získávají identitu povolených uživatelů ze serveru CAS. 156 156 157 157 = {{id name="04.Technickéinformace-07.Roleaoprávnění"/}}07. Role a oprávnění = 158 158 190 +(% style="" %) 159 159 === {{id name="04.Technickéinformace-Omezenípřístupu"/}}Omezení přístupu === 160 160 193 +(% style="" %) 161 161 Přístup uživatele může být omezen ve dvou různých oblastech: 162 162 163 163 * omezení přístupu k funkcionalitě ClinData 164 164 * omezení přístupu k datům uloženým v softwaru ClinData 165 165 199 +(% style="" %) 166 166 Veškerá omezení jsou nastavena v nástroji IMTM Admin. 167 167 202 +(% style="" %) 168 168 === {{id name="04.Technickéinformace-Omezenífunkcí"/}}Omezení funkcí === 169 169 205 +(% style="" %) 170 170 === {{id name="04.Technickéinformace-Oprávnění"/}}Oprávnění === 171 171 208 +(% style="" %) 172 172 Oprávnění k přístupu určují, ke kterým objektům v ClinData může uživatel prohlížet nebo je upravovat. Každá funkcionalita v softwaru ClinData je odrážena v odpovídajícím oprávnění, takže přístup ke všem funkcím je kontrolován. Každý uživatel nebo skupina uživatelů může mít přístup k přiděleným nebo omezeným oprávněním. 173 173 211 +(% style="" %) 174 174 Na obrázku je zobrazeno schéma oprávnění v softwaru ClinData. 175 175 214 +(% style="" %) 176 176 === {{id name="04.Technickéinformace-Role"/}}Role === 177 177 217 +(% style="" %) 178 178 Role jsou virtuální entity, které slouží jako kontejnery pro více oprávnění. 179 179 220 +(% style="" %) 180 180 Existují předdefinované role a uživatelé nebo skupiny uživatelů mohou být jim přiřazeny. Nejčastěji používané role jsou: 181 181 182 182 * admin systému ClinData - plný přístup ke všem funkcím v ClinData, žádná omezení, vytváření nových projektů ... ... @@ -185,10 +185,13 @@ 185 185 * monitor dat projektu ClinData - přístup ke všem funkcím potřebným pro sledování studie, validaci a dokončení CRFs (formuláře pro sběr dat) 186 186 * prohlížeč dat projektu ClinData - pouze čtení vybraných dat 187 187 229 +(% style="" %) 188 188 === {{id name="04.Technickéinformace-Omezenídat"/}}Omezení dat === 189 189 232 +(% style="" %) 190 190 Výchozí nastavení pro přístup k datům v softwaru ClinData je maximálně omezené. Uživatel vidí pouze data, která sám vložil. Výchozí nastavení neumožňuje vidět žádná data vložená jiným uživatelem. Přístup k ostatním datům musí být explicitně povolen. 191 191 235 +(% style="" %) 192 192 Tato nastavení lze upravit: 193 193 194 194 * uživatel vidí pouze svá data ... ... @@ -198,8 +198,10 @@ 198 198 199 199 === {{id name="04.Technickéinformace-Osobníúdaje"/}}Osobní údaje === 200 200 245 +(% style="" %) 201 201 Studie nebo registry mohou obsahovat osobní údaje. Přístup k těmto údajům může být omezen pomocí speciálního oprávnění. 202 202 248 +(% style="" %) 203 203 Tato nastavení lze upravit: 204 204 205 205 * uživatel vidí osobní údaje ... ... @@ -207,8 +207,10 @@ 207 207 208 208 = {{id name="04.Technickéinformace-8.Logování"/}}8. Logování = 209 209 256 +(% style="" %) 210 210 Systém ClinData zaznamenává všechny události, které se v systému odehrávají. Administrátor může tyto záznamy procházet v uživatelsky přívětivé formě a analyzovat potenciální problémy, sledovat aktivity uživatelů atd. 211 211 259 +(% style="" %) 212 212 Existují tři různé typy mechanismů pro zaznamenávání událostí: 213 213 214 214 * Záznamy softwaru se provádějí na úrovni programovacího jazyka a jsou velmi podrobné. Soubory se záznamy obsahují údaje o vnitřním stavu celého systému v době události. Tento přístup slouží pro podrobnou analýzu problémů, které se v minulosti vyskytly. ... ... @@ -226,40 +226,57 @@ 226 226 ** co bylo změněno 227 227 ** jaká je nová hodnota 228 228 277 +(% style="" %) 229 229 Důležitou informací je, že systém ClinData neodstraňuje žádné záznamy. Každý záznam v databázi má systémový příznak AKTIVNÍ. Smazání řádku pouze nastaví tento příznak AKTIVNÍ na hodnotu false. Neaktivní řádky se nezobrazují ve softwaru ClinData, ale stále jsou uloženy v databázi. 230 230 231 231 = {{id name="04.Technickéinformace-9.Vývojsoftwaru"/}}9. Vývoj softwaru = 232 232 282 +(% style="" %) 233 233 === {{id name="04.Technickéinformace-Sledováníproblémů"/}}Sledování problémů === 234 234 285 +(% style="" %) 235 235 Jakýkoli problém nalezený ve softwaru ClinData je zdokumentován a vytvořen jako nový problém v softwaru JIRA. JIRA software je vyvíjen společností Atlassian a slouží jako nástroj pro sledování problémů. Nový problém je analyzován a je mu přiřazena priorita. Seznam problémů je řazen podle priorit a zpracováván vývojáři. Pokud je závažný problém opraven, je publikován ve nové verzi softwaru ClinData. Problém je také uzavřen jako vyřešený v JIRA. 236 236 288 +(% style="" %) 237 237 === {{id name="04.Technickéinformace-Správazměn"/}}Správa změn === 238 238 291 +(% style="" %) 239 239 Všechny požadavky na změny plánované ve softwaru ClinData jsou uloženy v JIRA. Když přichází nový požadavek, je analyzován, provedena časová odhad a přiřazena priorita. Seznam problémů je řazen podle priorit a zpracováván vývojáři. 240 240 294 +(% style="" %) 241 241 === {{id name="04.Technickéinformace-Verzování"/}}Verzování === 242 242 297 +(% style="" %) 243 243 Zdrojový kód softwaru ClinData je uložen v repozitáři GIT, který umožňuje sledování změn v souborech. Je možné procházet historii libovolného souboru se zdrojovým kódem v repozitáři. Každá změna je také zdokumentována, aby bylo snadné pochopit vývojový cyklus. 244 244 300 +(% style="" %) 245 245 === {{id name="04.Technickéinformace-Revizekódu"/}}Revize kódu === 246 246 303 +(% style="" %) 247 247 Jakákoliv změna provedená ve zdrojovém kódu softwaru ClinData musí být zkontrolována jiným vývojářem. Tento proces se nazývá revize kódu. Tento proces minimalizuje počet chyb ve zdrojovém kódu, protože vše je dvojnásobně zkontrolováno. Pro revize kódu se používá software Bitbucket (vyvinutý společností Atlassian). Tento software brání vývojářům v používání neprokázaného kódu ve veřejných verzích softwaru ClinData. 248 248 249 249 = {{id name="04.Technickéinformace-10.Zajišteníkvality"/}}10. Zajištení kvality = 250 250 308 +(% style="" %) 251 251 === {{id name="04.Technickéinformace-Testovacíprostředí"/}}Testovací prostředí === 252 252 311 +(% style="" %) 253 253 Všechny nové verze softwaru ClinData musí být otestovány a ověřeny jako funkční a správné před jejich zveřejněním. Existuje zvláštní prostředí, které se používá k testování nové verze před jejím zveřejněním. Testovací prostředí musí být podobné produkčnímu prostředí, aby se předešlo problémům s konfigurací. 254 254 314 +(% style="" %) 255 255 === {{id name="04.Technickéinformace-Unittestování"/}}Unit testování === 256 256 317 +(% style="" %) 257 257 Unit testování je metoda testování softwaru, při které jsou testovány jednotlivé části zdrojového kódu, aby se zjistilo, zda jsou vhodné k použití. Ve zdrojovém kódu softwaru ClinData existuje více než tisíc unit testů. Všechny kritické části zdrojového kódu jsou pokryty unit testem téměř na 100 %. Celkový zdrojový kód je pokryt unit testem více než 85 %. Jakýkoli problém v unit testování je blokující pro zveřejnění verze softwaru. 258 258 320 +(% style="" %) 259 259 === {{id name="04.Technickéinformace-Testováníaplikace"/}}Testování aplikace === 260 260 323 +(% style="" %) 261 261 Celá aplikace je testována prostřednictvím průzkumného testování aplikace před jejím zveřejněním. Testování aplikace se provádí v testovacím prostředí. Jakýkoli problém při testování aplikace je blokující pro zveřejnění verze. 262 262 326 +(% style="" %) 263 263 === {{id name="04.Technickéinformace-Zveřejnění"/}}Zveřejnění === 264 264 329 +(% style="" %) 265 265 Proces zveřejnění znamená, že nová verze softwaru ClinData je uvolněna a zpřístupněna uživatelům. Pro sestavení a zveřejnění nových verzí se používá software Bamboo (vyvinutý společností Atlassian). Jednotkové testování je také součástí procesu zveřejnění nové verze. V případě jakéhokoli problému v jednotkovém testování je celý proces zveřejnění přerušen a zodpovědným osobám je zasláno oznámení emailem.
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -15305934 71 +153059345