REMWARE-PSEC-Portal servicii electronice pentru cetateni

  1. Platforma aplicativa portal servicii

Portalul web de servicii rulează pe o platformă aplicativă software. Software-ul platformă aplicativă portal este compus din server aplicaţii, server web şi server baze de date. 

Platforma pe care rulează portalul este una de tip COTS de tip pachet unitar care are server de web, aplicaţii şi baze de date, integrate în cadrul aceluiaşi produs software de tip platformă. Licenţa ofertată de noi este însoţită de garanţie şi servicii de mentenanţă oferite de producătorul platformei licenţiate pe perioada solicitată de beneficiar (costurile variază in functie de durata). Ea poate funcţiona minim pe următoarele SO server: Windows Server (toate versiunile inclusive pe 32 şi 64 de biţi), Linux (pe platforme Intel şi System Z), UNIX, Sun Solaris şi pe platforme hardware de tip Intel şi RISC. Soluţia proiectată este capabilă să ruleze într-o arhitectură de tip cluster şi oferă mecanisme de HA (high availability) atât pentru clustering cât şi pentru load-balancing (echilibrarea încarcaturii). Platforma permite rularea pe ultima versiune de server a oricărei aplicaţii realizate/dezvoltate/testate pentru orice versiune anterioară (backward compatibility) fără a fi necesară migrarea ei (in-place upgrade). 

Pentru compatibilităţi ulterioare, platforma permite instalarea şi rularea în aceeaşi arhitectură de tip cluster a serverelor cu caracteristici hardware diferite care rulează pe SO diferite (de ex unul pe UNIX şi altul pe Windows) şi care rulează versiuni diferite ale aceleiaşi platforme aplicative (ex ver.x cu ver.x+1 sau ver.x+2).

Pentru compatibilitate, platforma permite accesul şi sincronizarea cu următoarele platforme de baze de date:

  • MS SQL server ( Windows)
  • DB2 (Windows / Linux / Unix / OS/400 etc)
  • Oracle (Windows /Linux / Unix etc)
  • MySQL server
  • INFORMIX.

 

De asemenea platforma deţine mecanisme de intervenţie la eşuarea bazelor de date (database failover) şi continuitatea rulării serverului (server continuity) în caz de incident (folosind mecanisme de izolare în memorie a incidentelor).

Fiecare element care compune design-ul unei aplicaţii (cod, raport, machetă, imagine, task, etc) are un identificator unic în cadrul tuturor aplicaţiilor instalate pe platformă, identificator menţinut de serverul aplicativ şi sincronizat la nivelul tuturor serverelor aplicative pe care rulează sistemul informatic. 

De asemenea, fiecare aplicaţie care rulează la nivelul unui server aplicativ are un identificator unic la nivel de server (independent de director/cale pe server) şi poate fi instalată şi rulează corect pe alt server indiferent de directorul unde este instalată. 

Orice modificare a unei aplicaţii poate fi reflectată instant în funcţionarea ei fără a fi necesară oprirea/repornirea serverului aplicativ sau altă intervenţie/delay folosind mecanisme de tip hot-swap. 

Platforma permite nativ versionarea design-ului şi dispune de mecanisme de protecţie la modificări (design locking) atât la nivel de aplicaţie (în întregime) cât şi la nivel individual de element de design.

Platforma permite nativ criptarea/decriptarea documentelor direct în aplicaţiile web folosind chei secrete sau public/private.

Orice înregistrare din sistem are un câmp în care stochează sub formă de listă persoane şi/sau grupuri şi/sau roluri aplicative şi sau servere/grupuri de servere care au permisiunea de a citi (read) respectiva înregistrare.

Orice înregistrare din sistem are un câmp în care stochează sub formă de listă persoane şi/sau grupuri şi/sau roluri aplicative şi sau servere/grupuri de servere care au permisiunea de a modifica (edit) respectiva înregistrare.

Valabilitate licenţei este nelimitată.

  1. A. Server baze de date

Având în vedere că portalul de servicii gestioneaza conţinut ne-structurat în care se vor gestiona multe date (big data) în aplicaţii web real-time, baza de date pe care este realizat acesta este una de tip NoSQL orientată tip gestiune document (document store oriented database) cu un înalt nivel de securizare a informaţiilor. Acest tip de baze de date asigură o scalabilitate orizontală către sistemele de tip cluster şi un control fin asupra disponibilităţii, oferind timpi de răspuns mult superiori altor modele de baze de date. 

  • SGBD este COTS şi să suportă scalabilitatea pe orizontală;
  • SGBD permite replicarea instantanee (mirroring) în cluster a bazelor de date, aplicaţiilor web şi a securităţii aplicaţiilor într-o arhitectură de cluster activ-activ; replicarea se poate realiza automat, programatic (după un orar specificat) sau manual (la solicitarea explicită a unui task sau a unei proceduri apelate de pe server);
  • stocarea fişierelor se face în SGBD (nu la nivelul sistemului de fişiere); SGBD-ul permite gruparea fişierelor pe categorii şi aplicarea unor politici adecvate de securitate 
  • SGBD dispune nativ de interfaţă web integrată din care se pot efectua toate operaţiile de administrare şi de gestiune baze de date;
  • Politica de securitate integrată: serverul de aplicaţii, serverul de web şi serverul de baze de date dispun de un mecanism integrat de definire a accesului de către administrator astfel încât pe fiecare bază de date şi aplicaţii se poate defini orice combinaţie (produs cartezian) de drepturi din oricare din cele patru tabele următoare, din interfaţa web, folosind exclusiv selecţia de valori din liste (fără editare manuală text):

 

  1. Permisii globale pe aplicaţie
Cine Rol aplicativ Permisii globale pe baza de date

User neautentificat (anonim)

User autentificat

Grup de useri

Grup mixt (useri+grupuri +servere)

Server

Cel puţin 75 de roluri de aplicaţie customizate create de proiectanţii de soluţie 
  • Fără acces
  • Creare înregistrări noi
  • Vizualizare înregistrări
  • Modificarea propriilor înregistrări +2 şi 3
  • Modificarea înregistrărilor create de alţii+4
  • Administrare acces + 5

 

  1. Permisii pe un tip de înregistrare (tabel)
Cine Permisii pe un tip de înregistrare (tabel)

User neautentificat (anonim)

Server

User autentificat

Grup de useri

Grup mixt (useri+grupuri +servere)

Grupuri de servere

Cel puţin 75 de roluri aplicative customizate create de proiectanţii de soluţie

Poate citi înregistrările din tabelul specificat

Poate crea înregistrări în tabelul specificat

 

 

  1. Permisii pe o secţiune din înregistrare (grup de câmpuri)
Cine Permisii pe o secţiune din înregistrare (grup de câmpuri)

User neautentificat (anonim)

Server

User autentificat

Grup de useri

Grup mixt (useri+grupuri +servere)

Grupuri de servere

Cel puţin 75 de roluri aplicative customizate create de proiectanţii de soluţie

Cine poate vizualiza

Cine poate completa sau modifica 

 

  1. Permisii globale pe înregistrări
Cine Permisii globale pe înregistrări

User neautentificat (anonim)

Server

User autentificat

Grup de useri

Grup mixt (useri+grupuri +servere)

Grupuri de servere

Poate crea înregistrări în baza de date

Poate şterge înregistrări

Poate replica/sincroniza înregistrări

 

  • securitatea lucrului cu fişiere în SGBD implementează minimum următoarele scheme de acces ca produs cartezian dintre oricare două perechi de tipul (Cine x Permisii):
Cine Permisii pe categorie de fişiere stocate în baza de date

User neautentificat (anonim)

Server

User autentificat

Grup de useri

Grup mixt (useri+grupuri+servere)

Grupuri de servere

Cel puţin 75 de roluri aplicative customizate create de proiectanţii de soluţie

 

Poate citi fişierele din categoria specificată

Poate crea fişiere în categoria specificată

Permisii pe fişiere stocate în baza de date

Poate citi fişierele specificate

Poate crea fişiere 

 

  • Pentru fiecare înregistrare SGBD menţine automat, la nivel de server (şi nu prin cod client) cel puţin următoarele informaţii din sistem care nu pot fi alterate cu nici un instrument:
  • Identificator unic în baza de date
  • Identificator unic pentru toate instanţele de baze de date şi servere dintr-un domeniu care conţin replici ale bazei de date
  • Numele şi credenţialele creatorului indiferent dacă înregistrarea a fost creată front-end sau back-end şi semnătura digitală a acestuia (dacă s-a specificat) pentru documentele/câmpurile semnate digital
  • Lista certificatelor utilizatorilor/serverelor care au modificat înregistrarea indiferent dacă modificarea a fost front-end sau back-end
  • Data exactă (+minut, secundă) a creării şi ultimei modificări
  • Data exactă (+minut, secundă) a ultimului acces pentru orice utilizator care accesează înregistrarea
  • La nivel de server – Se pot defini utilizatori (persoane +grupuri), acces la server, grupuri de servere
  • La nivel de bază de date – Posibilitatea de definire a rolurilor, utilizatorilor (persoane, grupuri) care au dreptul să vadă, creeze, modifice înregistrări şi a mapării dintre utilizatori şi roluri
  • La nivel de bază de date – posibilitatea de definire a accesului maxim pentru userii de internet
  • La nivel de înregistrare – Posibilitatea de definire a utilizatorilor (persoane, grupuri, roluri) care au acces în consultare la înregistrarea respectivă, care au dreptul de modificare a ei
  • La nivel de secţiune (secvenţă logică ordonată de câmpuri) din înregistrare – Posibilitatea de definire a utilizatorilor (persoane, grupuri, roluri) care au acces să modifice secţiunea respectivă
  • La nivel de câmp – posibilitatea de criptare a conţinutului unui câmp (de ex. de tip parolă)
  • Securitatea datelor gestionată de serverul de baze de date se poate realiza nativ (prin funcţionalităţile native ale platformei COTS) de către serverul de baze de date (fără codificare din partea clientului) minim la următoarele nivele:

 

Bazele de date suportă scalabilitatea pe orizontală; în acest sens ele folosesc pentru stocarea informaţiilor legate de managementul documentelor un model orientat pe document. Orice modificare a schemei sau de structură a bazei de date este reflectată imediat în aplicaţiile funcţionale (schema BD-> cod respectiv cod-> schema BD) şi nu generează down-time la sistemul informatic implementat. 

Baza de date suportă cel puţin următoarele tipuri de date care să permită valori multiple pentru un câmp (liste multivalue):

Tip de date Permite valori multiple în câmp (lista multivalue) Poate fi câmp cheie Se poate sorta după acest câmp Se poate grupa după acest câmp Observaţii
CHAR Da Da Da Da Nu e nevoie să se definească o lungime maximă a câmpului
Numeric Da Da Da Da Numere Intregi sau zecimale, simplă sau dublă precizie
Binary Large Object (BLOB) Da       Nu e nevoie să se definească o lungime maximă a câmpului
Data şi timp (Timestamp) Da Da Da Da  
Time Zone Da        
Culoare Da Da Da Da  
Securitate cititor Da Da Da Da

Cine poate accesa în consultare înregistrarea/secţiunea

Nu e nevoie să se definească o lungime maximă a câmpului

Securitate Modificator Da Da Da Da

Cine poate modifica înregistrarea / secţiunea

Nu e nevoie să se definească o lungime maximă a câmpului

Orice modificare (ALTER) a schemei bazei de date sau a structurii tabelelor se face fără generarea de downtime, indiferent de numărul de înregistrări din baza de date; baza de date suportă orice modificare sau inserare de înregistrare în acelaşi timp în care se efectuează operaţia de modificare schemă sau structură a tabelului.

Platforma suporta încuierea/blocarea (locking) înregistrărilor aflate în editare web atât pentru modificările efectuate de către utilizatorii web cât şi de către task-urile din back-end. 

În acest fel, în momentul în care un utilizator doreşte să acceseze în scop de modificare o înregistrare aflată deja în editare la alt user, platforma îl notifica automat (pe canale web) de imposibilitatea operaţiei iar la eliberarea unei resurse din editare, tot platforma  descuie/deblocheze (unlock) imediat şi automat respectiva resursă. Platforma permite identificarea automată prin mecanisme native a operţiunilor de locking şi de terminare a operaţiei de editare pentru a face unlock pe resursa editabilă web.

De asemenea, sistemul informatic dispune de mecanisme care permit editarea concurentă pe web a înregistrărilor prin descuierea/deblocarea (lock) la nivel de câmp. Astfel, în cazul unei înregistrări aflate în editare pe web simultan de către doi useri nu e  permisă modificarea unui câmp dacă acesta a fost deja modificat de alt user.

Cele două mecanisme de încuiere/blocare  (la nivel de câmp şi la nivel de înregistrare) la editarea pe web pot fi activate/dezactivate de către administratorul soluţiei.

Încuierea/blocarea (locking) la editarea înregistrarilor se aplica tuturor înregistrărilor care au acelaşi identificator unic pe toate replicile bazei de date. Dacă un utilizator editează o înregistrare, atunci această înregistrare nu poate fi editată de nici un alt utilizator atât în baza de date curentă cât şi pe orice replică a ei de pe orice alt server de baze de date cu care se află în arhitectură de replicare. În acest fel platforma poate defini un server master care menţine centralizat şi unitar toate încuierile/blocările (locking) de modificare a înregistrărilor.

SGBD permite managementul performant al câmpurilor astfel încât valorile de tip NULL să nu consume spaţiu fizic.

Replicarea datelor

SGBD dispune de mecanisme de replicare manuală şi automată (task-uri programatice) a datelor. Replicarea se poate face pentru toate înregistrările dintr-o bază de date sau numai pentru anumite înregistrări, pe baza unei politici configurate de administratorul de sistem (replicare selectivă). Formula de selecţie a datelor replicabile permite alegerea lor după valori, date (creare/modificare/ştergere), autori, editori, etc. Mecanismul de replicare automată rulează cu credenţialele (certificatul) serverului de baze de date şi respectă pentru acesta securitatea impusă în baza de date.  La apariţia unor conflicte de replicare, sistemul aplică automat o politică de creare a înregistrărilor de tip conflict cu izolarea şi identificarea lor imediată în baza de date. Administratorul poate aplica manual sau automat politici de tratare a conflictelor de tipul merge/response pentru înregistrările de tip conflict.

Licenţa pentru platforma aplicativă livrată este nouă şi de ultimă versiune emisă de producător şi va fi instalată într-o arhitectură de cluster activ-activ la nivel de aplicaţie pe două servere. Cantitatea şi volumul de licenţiere cu care vine produsul la pachet e de tip Enterprise sau echivalent.

  1. B. Serverul Web

Nodul server web furnizează un server web procesând şi livrând conţinut informaţional în principal de natură statică. Paginile statice (şi pseudo statice) sunt livrate pe baza protocolului HTTP şi HTTPS. Capabilităţile serverului web includ abilitatea de a manipula pagini web simple proiectate în HTML. În cazul în care sunt recepţionate cereri de accesare a unor funcţii dinamice, serverul web înaintează cererile serverului/serverelor de aplicaţii (filtrare/dispatch). Serverul permite nativ utilizarea funcţiilor de criptare trafic (HTTPS) şi comprimare a traficului de ieşire (output compression) folosind algoritmi de compresie. Serverul poate defini site-uri web multiple independente şi le tratează separat, pentru fiecare site definit se poate specifica unde sunt stocate datele de configurare sesiune, operaţiile permise (minimum GET, POST, HEAD, OPTIONS, TRACE, DELETE, PUT). Serverul de web funcţioneaza ca un server de Proxy pentru serverul de aplicaţii. 

Sistemul permite utilizarea compresiei la servirea fişierelor statice. În acest caz, se pot defini şi excepţii de la politica de compresii.

Sistemul server web permite extinderea lui cu module proprii de filtrare. În acest sens, dispune nativ de un set de funcţii (API) care permite filtrarea cel puţin a următoarelor evenimente:

  • Autentificarea utilizatorilor
  • Implicarea unui sistem de autorizare extern

 

Sistemul permite conversia imaginilor în formatul implicit GIF şi servirea lor întreţesută pentru optimizare. De asemenea, se poate limita cantitatea de date aferentă unei operaţii POST şi  permite compresia fişierelor la upload.

Pentru fiabilitatea sistemului, serverul poate funcţiona într-o arhitectură de tip load-balancing şi dispune de interfaţă grafică web de configurare; din interfaţa web se pot executa comenzi de tip consolă (linie de comandă) asupra serverului care poate oferi informaţii despre:

  • Task-urile care rulează curent pe server
  • Sesiunile web ale utilizatorilor (câţi sunt conectaţi, durată, câte sesiuni, etc.)
  • Ce aplicaţii şi baze de date sunt accesate de useri (prin conexiunile serverului web)

 

Serverul poate participa într-o arhitectură de autentificare unică (SSO) cu alte servere de web iar serviciile de proces sunt responsabile cu fluxurile de procese. Acestea includ mecanisme de respectare şi gestiune a regulilor domeniului de activitate şi de procesare a deciziilor. Procesele deservite pot fi de durată scurtă, ne-întreruptibile, sau de lungă durată, incluzând combinaţii de servicii puse la dispoziţie prin software şi acţiuni umane. Sistemul poate suporta autentificarea SAML minim v1.1 şi 2.0.

Compunerea acestor procese rezultă din modelare, iar “executabilul” rezultat se rulează pe motorul de execuţie al proceselor.

Serverul de web permite:

  • Crearea de site-uri virtuale (Virtual hosts), iar pe fiecare astfel de site se poate defini:
  • Autentificare TCP HTTP: ca Anonim, cu nume&parola, redirectare către SSL
  • Autentificare SSL: ca Anonim, cu nume&parola, cu certificate client SSL v2 şi SSL v3
  • Rularea de scripturi CGI
  • Posibilitatea de filtrare server-side a paginilor cu un filtru şi transferul lor automat către alte server pe baza unor politici de filtrare
  • Configurarea de locaţii WebDAV sau echivalent
  • Configurarea traficului astfel încât acesta să poată fi comprimat cu algoritmi de tip zip
  • Configurarea astfel încât să servească informaţiile binare (ex. imagini .gif) în format comprimat automat.

Criptarea folosind SSL v3.0 suporta următorii algoritmi:

  • AES cu cheie pe 128bit şi 256bit şi SHA-1 MAC
  • RC4 cu cheie pe 40 bit şi 128bit şi MD5 MAC
  • RC4 cu cheie pe 128bit şi SHA-1 MAC
  • DES cu cheie pe 56bit şi SHA-1 MAC
  • Triple DES cu cheie pe 168 biti şi SHA-1 MAC

 

  1. C. Serverul de aplicaţii

Serverul de aplicaţie are următoarele capabilităţi:

  • Capabilităţi de clustering la nivel de aplicaţie, cu distribuţie a sarcinii de lucru în cluster; 
  • Distribuţia sarcinii de lucru a serverului web;
  • Poate oferi şi consuma servicii web, folosind protocoalele SOAP, HTTP;
  • Poate oferi şi consuma REST-uri;
  • Suport pentru autentificare bazată pe roluri şi pe certificate;
  • Limbajele de programare folosite genereaza cod care rulează fără emulatoare şi fără virtualizare pe SO  server;
  • Permite păstrarea în memorie a codului obiect (gata compilat) pentru aplicaţii şi reutilizarea lui direct din locul unde a fost salvat pentru a elimina eventualele recompilari redundante;
  • După generare şi la fiecare modificare, salveaza pe disc codul rezultat după compilare şi îl încarca direct de pe disc fără să fie necesară recompilarea lui;
  • Poate stabili pentru fiecare aplicaţie în parte utilizatori care pot administra complet aplicaţia (inclusiv gestiune acces);
  • Poate stabili pentru fiecare aplicaţie în parte utilizatori/grupuri care pot administra aplicaţia fără posibilitatea de modificare/gestiune acces;
  • Pentru autentificare, serverul permite definirea de address book-uri multiple atât native cât şi externe (ex LDAP, Microsoft Active Directory sau Tivoli Directory Server, etc) şi poate seta o politică de utilizare a lor atât individual cât şi înlănţuit (address book cascadat).

Securitatea aplicaţiilor pe serverul de aplicaţii

  • funcţionalităţi Single Sign-On oferind interoperabilitate imbunătăţită între diferite aplicaţii şi medii;
  • auditare securitate acţiuni administrative, cum ar fi modificări de configurări de securitate, gestionare de chei şi certificate, modificări de politici de control al accesului, etc;
  • administrare a securităţii la nivelul consolei de administrare, cu acces pe bază de drepturi, în funcţie de roluri la nivelul cell, node, cluster sau aplicaţie.

Administrarea serverului de aplicaţii

  • permite administrarea de la distanţă folosind atât client web cât şi client propriu (fără instrumente de tip Remote Desktop); atât administrarea prin client web cât şi cea prin client propriu se face prin conexiuni securizate pe bază de certificate digitale pe min 512 biti şi user+parolă;
  • consolă de administrare web-based pentru gestionarea centralizată a tuturor componentelor din topologii ce includ mai multe servere de aplicaţii şi/sau web

Alte caracteristici pentru serverul de aplicaţii

  • Conţine mecanisme de criptare a informaţiilor stocate
  • exista posibilitatea de lucru off-line şi sincronizare;
  • exista mecanisme granulare de securitate, la nivele individuale de user, server, aplicaţie, staţie;
  • serverul de aplicaţii permite nativ replicarea în întregime a întregului design al unei aplicaţii (cod, machete, rapoarte, fişiere, resurse, etc) între diverse servere de aplicaţie atât manual cât şi programatic pe baza unui task; de asemenea deţine integrat un mecanism de actualizare şi distribuţie design aplicaţii;
  • platforma conţine propriul sistem LDAP, fără a fi nevoie de licenţiere suplimentară sau hardware suplimentar, dar permite şi integrarea cu alte sisteme LDAP (cum ar fi Microsoft Active Directory sau Tivoli Directory Server sau echivalent);
  • Suporta ca mediu de rulare a aplicaţiilor platforma Java sau o platformă echivalentă; 
  • Suporta nativ pentru aplicaţiile de pe platformă posibilitatea de aplicare a unei teme unitare, bazate pe un framework de tip Bootstrap sau echivalent.

 

  1. Aplicaţie portal de servicii electronice pentru cetăţeni

Aceasta este principala aplicaţie componentă a sistemului informatic. Aplicaţia are ca suport aplicativ, web şi  baza de date, platforma aplicativă portal.

Portalul este accesibil în orice moment, atât de la orice punct de Internet, cât şi din interiorul sistemului informatic al instituţiei. Portalul este 100% compatibil, din punctul de vedere al funcţionalităţii, cu versiunile la zi ale celor mai răspândite browsere (Microsoft Internet Explorer, Opera, Mozilla FireFox, Google Chrome etc.) şi care sunt suportate de sistemele de operare cele mai uzuale (Windows 7,8,10). De asemenea, exista posibilitatea de lucru cu mai multe „tab”-uri pe care o suportă browser-ele.

Integritatea sistemului este o caracteristica importantă, astfel sunt evitate într-o mare măsură, oricare dintre cauzele care pot conduce la afectarea funcţionalităţii portalului. La aceasta contribuie inclusiv mecanismele de asigurare a securităţii şi auditării accesării portalului care sunt implementate.

Portalul include un motor de căutare propriu, pentru căutările din interiorul portalului; acesta permite căutarea în toate paginile care alcătuiesc portalul (sau doar în cele specificate de către administrator); motorul de căutare include posibilitatea căutării după cuvinte întregi, după secvenţe, permite folosirea operatorilor logici; de asemenea dispune de posibilitatea de generare automată a unei liste cu cele mai frecvente căutări (FAQ).

Portalul va fi livrat pre-configurat cu un layout iniţial; portalul permite, ulterior instalării şi configurării iniţiale, modificarea facilă a layout-ului, fără restricţii cu privire la dimensiunile şi amplasarea secţiunilor şi a paginilor de afişare a acestora. Layout-ul iniţial va include toate secţiunile speciale (specificate mai jos).

Paginile afişate de site vor fi astfel încât, în momentul afişării pe un monitor cu rezoluţia de 1024x768 pixeli, ocupa întreaga lăţime a ecranului (1024 pixeli); în cazul în care pagina de afişat necesită mai mult spaţiu pe verticală decât dimensiunea maximă a ecranului, atunci pentru pagina respectivă se afişeaza, pe lateral, bare de defilare.

Dimensiunile paginilor afişate sunt scalabile (responsive), în sensul redimensionării automate a ariilor ocupate de secţiunile definite pentru paginile respective (dar numai pentru cele automat scalabile), în funcţie de rezoluţia utilizată de ecranul pe care este afişat conţinutul portalului. Orice pagină afişată se poate vedea în întregime şi corect atât pe desktop cât şi pe tabletă şi telefon mobil.

Portalul permite utilizatorilor, prin intermediul browserului utilizat pentru parcurgerea portalului, redimensionarea fonturilor afişate pe paginile portalului.

Portalul permite autentificarea unor utilizatori, care să realizeze administrarea conţinutului portalului, la nivel general şi/sau numai pentru anumite secţiuni.

Portalul este organizat pe secţiuni (pagini). Fiecare secţiune poate include sub-secţiuni. Numărul secţiunilor posibile a fi create este practic, nelimitat.

Structura portalului este ierarhică, arborescentă de pagini şi dosare, existând operaţiuni de modificare a acestei structuri, precum reîncadrarea unei întregi ramuri, sau setarea drepturilor de acces la nivelul unei întregi ramuri din cadrul structurii.

Portalul are o pagină de start, afişabilă corect indiferent de:

  • rezoluţia şi tipul ecranului pe care este redată;
  • browserul utilizat (de exemplu: afişare pe monitor cu tub catodic sau pe monitor de tip LCD; afişare la o rezoluţie de 1024x768 sau 800x600 sau 1280x960 sau 1280x1024, etc.).

 

Pentru pagina de start se pot defini un conţinut implicit, afişabil de fiecare dată cînd conţinutul paginii de start (aşa cum va fi ea definită de către administrator) nu va fi disponibil (din diverse cauze) sau va fi şters accidental.

O secţiune specială afişează meniul portalului. În acest meniu este realizat afişat meniul tuturor secţiunilor şi sub-secţiunilor acestora (indiferent de nivelul sub-secţiunilor).

Meniul este „construit” în mod automat, în momentul definirii secţiunilor şi sub-secţiunilor din partea de administrare. Conţinutul secţiunii meniului nu poate fi editat în mod direct, de către nici un utilizator.

Singurele modificări permise asupra acestui meniu sunt următoarele:

  • cele referitoare la modificarea dimensiunilor secţiunii;
  • cele referitoare la modificarea amplasării secţiunii;
  • cele referitoare la formatarea fontului necesar afişării meniului;
  • cele referitoare la formatarea fundalului secţiunii.

 

Singurul utilizator cu drept de efectuare a modificărilor indicate este administratorul portalului nominalizat de autoritatea contractantă. În situaţia în care dimensiunile alocate pentru secţiunea meniului portalului nu sunt suficiente pentru afişarea integrală a acestuia, secţiunea meniului  afişeaza bare de defilare corespunzătoare (orizontală şi/sau verticală).

În meniu sunt afişate denumirile tuturor secţiunilor şi sub-secţiunilor, ordonate ierarhic, în funcţie de nivelul acestora. Meniul permite „expandarea” şi „colapsarea” unei  secţiuni sau sub-secţiuni (indiferent de nivel) reprezentată în meniu şi permite schimbarea rapidă a paginii curente afişate în secţiunea curentă.

În funcţie de punctul de la care este accesat portalul, conţinutul secţiunii meniului este diferit. Astfel, pentru accesările portalului din interiorul sistemului informatic al instituţiei, meniul  afişeaza elemente suplimentare, legate de secţiunea de administrare, aceste elemente nefiind vizibile pentru utilizatorii obişnuiţi ai portalului.

Portalul este intregrat cu diverse unelte de analiză trafic şi optimizare SEO (salvare date în cadrul acestor unelte, precum şi preluarea acestor date şi afişarea lor automată în cadrul interfeţei cu utilizatorii).

Componenta de Control Acces (CA)

Această componentă este responsabilă cu autentificarea utilizatorilor în Portalul de servicii şi accesul acestora la serviciile on-line la care s-au înrolat. Tot această componentă autentifică persoanele din cadrul beneficiarului care administrează şi operează sistemul informatic integrat.

Ea are o parte de înrolare în sistem; aici utilizatorii vor completa un formular de înregistrare (datele minimale - user, parola, date de contact, canale de comunicare, servicii electronice de care doreşte să beneficieze); după validarea off-line (beneficiarul stabilește propria politică de validare, timp de răspuns, etc), solicitantul va primi credenţialele de acces în sistem pe canalele de comunicare alese la înrolare. 

Partea de autentificare şi asignare automată acces la servicii on-line se va face de către CA pe baza datelor înregistrate în sistem; utilizatorul poate să îşi actualizeze/completeze datele din profil şi să aibă un istoric al serviciilor pe care le-a utilizat şi să solicite înrolarea pentru accesul la alte servicii on-line

Componenta este scalabilă atât pe orizontală (din punct de vedere al creşterii numărului de beneficiari) dar şi pe verticală (din punct de vedere al extinderii cu noi servicii on-line).

Componenta de Administrare a Portal-ului 

Componenta Administrare Portal este utilizată de către funcţionarii autentificaţi din intranet pentru realizarea următoarelor operaţiuni:

  • Modificarea conţinutului paginilor afişate aferente nivelului şi drepturilor de acces
  • Modificarea structurii aferente nivelului la care se referă
  • Validarea cererilor de înrolare în sistem
  • Vizualizarea log-urilor de operaţii, a traficului pe fiecare pagină şi pe tot site-ul

 

Secţiunea de administrare conţine solicitările de înrolare în sistem cu tot fluxul de validare şi aprobare.

Fluxul permite comunicarea electronică între instituţie şi cetăţeni, prin trimiterea de e-mail-uri de confirmare/înştiinţare. Componenta permite trimiterea de mesaje de tip e-mail în diverse stadii ale aprobării cererilor de înrolare, precum şi ulterior, la apariţia evenimentelor în cadrul sistemului informatic implementat. Mesajele de tip  e-mail pot fi configurate şi sunt dinamice, particularizate cu datele specifice fiecărei cereri de înrolare/utilizator.

Mecanismul de înrolare utilizator include şi o validare a căsuţei de e-mail specificate, prin trimiterea unui mesaj de confirmare, în care viitorul utilizator va  acţiona un link personalizat.

De asemenea, există un mecanism de resetare a parolei, mecanism care se desfăşoara automat, fără intervenţia funcţionarilor / administratorilor soluţiei. Acest mecanism se desfăşoara prin intermediul schimbului de mesaje electronice (e-mail), configurabile din secţiunea de administrare.

Subsistemul de administrare portal este astfel organizat încât permite toate funcţiunile indicate, inclusiv următoarele:

  1. Crearea, modificarea, ştergerea secţiunilor portalului. Secţiunile speciale sunt cele utilizate la administrare. nu vor putea fi şterse, nici chiar de către administratorul portalului. Pentru secţiunile speciale, administratorul (şi numai acesta) poate stabili opţiunea de afişare sau ascundere a acestora. Excepţie: secţiunea de administrare a portalului, secţiunea meniului portalului şi pagina de start (secţiunea paginii de start) nu pot fi ascunse.
  2. Definirea de sub-secţiuni pentru o anumită secţiune sau sub-secţiune, până la nivelul indicat de minim 5 nivele de subsecţiuni permise pentru o secţiune.
  3. Pentru fiecare dintre secţiunile portalului şi sub-secţiunile definite pentru acestea, se poate modifica următorii parametri:
  • dimensiunile şi amplasarea pe pagină;
  • zona de margine, de o anumită lăţime şi culoare, precum şi posibilitatea specificării pentru aceasta de efecte 3D specifice;
  • dacă pentru secţiunea respectivă se permite scalarea dimensiunilor, în funcţie de rezoluţia ecranului pe care este afişată sau nu;
  • fundalul grafic; pentru acesta se poate specifica dacă va apărea suprapus peste fundalul grafic general al portalului sau nu; vor fi suportate cel puţin următoarele formate grafice: BMP, JPG, GIF, PNG;
  • fundalul sonor (dacă este cazul pentru secţiunea respectivă); formatele suportate sunt următoarele: WAV, MP3;

Oricare dintre aceste atribute pot fi afişate simultan cu oricare şi oricâte dintre celelalte, precum şi independent de acestea.

În cadrul subsistemului de administrare este disponibilă o opţiune de ataşare multiplă a fişierelor într-un singur pas (exclus ataşarea individuală a fişierelor). Gestiunea fişierelor ataşate se face exclusiv din cadrul secţiunii de administrare, fără a se folosi aplicaţii externe (ex.: client FTP).

În cadrul subsistemului de administrare, se permite, pe fiecare pagină, setarea drepturilor de acces (vizualizare, editare, ştergere).

De asemenea, pentru toate operaţiunile efectuate din secţiunea de administrare, exista un jurnal din care să reiasă cine, când, de la ce IP şi ce operaţiuni a efectuat asupra paginilor.

Proiectarea serviciilor on-line

Portalul dispune de un instrument propriu de proiectare a serviciilor on-line furnizate către cetăţeni. Acest instrument propriu este utilizat atât pentru customizarea serviciilor cât şi pentru proiectarea altor servicii ulterioare care pot apărea ca necesitate a autorităţii contractante în perioada post-implementare. Sistemul permite crearea unui număr nelimitat de formulare, care să conţină un număr nelimitat de câmpuri de culegere date şi care să poată fi accesate de un număr nelimitat de participanţi. Sistemul permite la definirea unui formular, adăugare de câmpuri editabile şi needitabile, de tip text, data, numeric, câmpuri de selecţie (o singură alegere) sau multiple (mai multe alegeri). De asemenea, câmpurile pot fi puse mai multe pe un rând, să se poată plasa etichetele lor în diverse poziţii (ex. deasupra/stânga) iar câmpurile care conţin validări sunt afişate distinct. Întreg formularul este responsive, vizibil în întregime de pe dispozitivele desktop, tablete sau smartphone.

Câmpurile de pe formulare online permit încărcare cu nomenclatoare folosite de sistemul de la beneficiar cum ar fi tipurile de acte, nomenclatorul stradal, codurile caen, etc. Câmpurile de pe formular permit adăugarea următoarelor tipuri de validări: este număr, este data, este cnp valid, este email, este unic, este parolă. Sistemul ofera posibilitatea de a aduce modificări unui formular deja creat dar încă nepublicat.

Fiecare formular completat conţine validare de tip captcha, împotriva atacurilor informatice şi  ofera posibilitatea de ataşare multiplă, cu posibilitate de setare a limitei maxime a dimensiunii afişierelor ataşate.

Sistemul păstreaza istoricul tuturor formularelor şi să afişeze statisticile cu rezultatul acestora, atât în format text cât şi în formă grafică sugestivă.

Pentru serviciile care presupun plata unei taxe la depunerea solicitării, formularul permite afişarea informaţiilor legate de plata acestei taxe astfel:

  • denumirea taxei, contul unde trebuie plătită, link către site-ul de plăti on-line indicat de autoritatea contractantă cu identificarea clară a datelor de plată (UAT, categorie, tip taxă);
  • valoarea taxei (calculată ca valoare fixă sau ca urmare a aplicării unui algoritm).

 

Pentru serviciile taxabile, solicitantul poate ataşa dovada plăţii acestei taxe, cu posibilitatea directionării automate spre secţiunea de plăţi. 

De asemenea, procesul de solicitare a unui serviciu (completarea formularului) de către cetăţean poate fi întrerupt oricând şi reluat din pasul în care a rămas cu păstrarea informaţiilor deja completate.

Definirea formularelor

  • Ofera o interfaţa intuitivă, integral în limba română;
  • Ofera posibilitatea construirii a minim următoarelor tipuri de formulare: PDF, Formulare web (WebForms), Pas-cu-Pas (Wizard);
  • Formularele de tip wizard nu sunt limitate la un număr de paşi, astfel utilizatorul care defineşte formularele poate gestiona independent direct din interfaţa câţi paşi are un formular;
  • Tipul de formular poate fi ales ad-hoc, direct din interfaţa de creare de formulare;
  • La definirea unui formular, utilizatorul poate accesa minim următoarele moduri: generatorul de formulare, previzualizarea în timp real a formularului, schema JSON specifică formularului, simularea datelor din formularul rezultat fără a fi nevoie să se deschidă ferestre modale sau alte interfeţe, dintr-un singur ecran;
  • Posibilitatea de construire de formulare prin utilizarea procedeului drag and drop;
  • La construirea formularelor, interfaţa de construire a formularelor pune la dispoziţie următoarele tipuri de câmpuri, zone, secţiuni:
  • De bază, pe care utilizatorul autorizat le poate defini/încadra/configura în formular, minim: text, number, text area, checkbox, time, select boxes, select, radio, content, button;
  • Cu date specifice, pe care utilizatorul autorizat le poate defini/încadra/configura în formular, minim: email, phone number, address field, date/time, day, tags, currency, html element, resources, file, nested form, signature, custom, survey, location;
  • Câmpuri de date, secţiuni cu încărcare dinamic, zone de date: hidden, container, data grid, data map, edit grid.
  • Type – tipul unei componente să fie preconfigurat;
  • Key – parametru folosit pentru integrarea API;
  • Label – eticheta HTML a câmpului;
  • Placeholder – text afişabil în câmp, înainte de completarea acestuia;
  • Input – permite specificarea unui element dacă este introdus sau nu de către utilizator;
  • Multiple – posibilitatea de acceptare valori multiple;
  • Protected – posibilitatea de includere sau excludere în API, după ce formularul este transmis;
  • Prefix – text afişat în fata elementelor de tip input;
  • Sufix – text afişat după elementele de tip input;
  • Default value – valoare afişată implicit;
  • Clear on hide – dacă valoarea din câmp să fie golită când acesta este ascuns în urma unei condiţii de afişare în timpul completării formularului de către cetăţean;
  • Unique – verifica unicitatea lui la nivel de baza de date pentru formularul în cauză;
  • Persistent – stabileşte dacă valoarea din câmp trebuie salvată ca şi persistentă;
  • Hidden – stabileşte dacă câmpul trebuie să fie ascuns în formular, valoarea care să poată fi schimbată condiţionat ad-hoc în timpul completării de către utilizator a formulării;
  • Validate – stabileşte criteriile de validare pentru o componentă;
  • Conditional – stabileşte momentul când o componentă este vizibilă pentru utilizatorul final, cel care completează formularul;
  • Errors – customizarea erorilor;
  • Logic – permite definirea unei ontologii;
  • Componenta de tip Conditional permite configurarea următoarelor proprietăţi:
  • Interfaţa dinamică, indiferent de stadiul formularului, câmpurile pot fi rearanjate prin acţiuni simple de tip drag-and-drop în coloane multiple, field-set, paneluri, tabele, taburi, paneluri condiţionate;
  • Interfaţa este să fie construită pe componente, fiecare componentă permie configurarea la definire;
  • Pentru fiecare componentă poate fi gestionat următoarele: modul de afişare, date, validare, API, condiţii de afişare, definirea unei logici (ontologii); 
  • Pentru fiecare componentă care poate fi redată într-un formular, soluţia ofera posibilitatea configurării a următorilor parametrii: 
  • Show – afişează câmpul când condiţia este îndeplinită;
  • When – evenimentul în urma căruia câmpul devine vizibil condiţionat de alta componentă;
  • Eq – valoarea cu care se face comparaţia;
  • Json – o ontologie de tipul JSON Logic care să determine afişarea componentei.

 

Componenta de tip Errors permite afişarea erorilor personalizabile pentru fiecare componentă atunci când apare o eroare şi are următoarele proprietăţi configurabile pentru determinarea, validarea, datelor culese în formular: required, min, max, minLength, maxLength, invalid_email, invalid_date, pattern, custom.

Componenta de tip Logic permite schimbarea definiţiei componentelor din formular ca reacţie la datele introduse la completarea acestuia. De exemplu, la modificarea unui câmp alt câmp/componenta să fie dezactivat sau ascuns. Această componentă  permite definirea unei ontologii, astfel practic nu este limitată la un număr de ontologii per componentă. Fiecare ontologie este descrisă folosind următoarele: nume, acţiune declanşatoare (de tip trigger având minim următoarele posibilităţi de definire folosind: Logica simpla, Javascript, JSON Logic sau Event), acţiune care se aplică unei componente atunci când este evaluată pe true (adevărat) logica, valoare (value) componentei atunci când logica este evaluată pe adevărat.

La definirea unui câmp, indiferent de tipul lui, soluţia ofera o interfaţă de simulare specifică câmpului (preview). Interfaţa este construită ergonomic, folosind elemente de tip tab, paneluri, ferestre modale.

Generare bază de date cu toate înregistrările legate de formulare online

Accesul la modul de definire al formularelor poate fi definit de administratorul portalului; 

Accesul pe formularele de definire este securizat (citire, scriere) şi grupat pe user/rol/grup, utilizatorii, roluri funcţionale şi grupuri.

Există posibilitatea de logare a fiecărei acţiuni în sistem, şi se pot urmări data, ora, ip, utilizatorul, acţiunea, valoare iniţială şi valoare modificată a unei informaţii modificate. De asemenea exista posibilitatea de regăsire a informaţiilor în timp real după câmpurile definite dinamic pe formulare.

Portalul genereaza automat statistici cu privire la informaţiile solicitate prin formulare, care conţin informaţii din câmpurile definite dinamic. Sunt disponibile următoarele situaţii:

  • formulare solicitări: active, inactive, perioada de valabilitate, taxe aferente;
  • solicitări depuse după data depunerii, tip serviciu, solicitant, taxă plătită;
  • solicitări întrerupte după data iniţierii, data ultimei modificări, tip serviciu, solicitant.

 

Portalul permite generarea automată în sistemul de gestiune a bazelor de date suport a bazei de date şi structurii de date (eventual tabel) aferentă fiecărui formular, fiecărei depuneri de solicitare în parte, fără să fie nevoie de eventuala intervenţie a administratorului de baza de date pentru definire de tabele, etc. Orice câmp nou pe formular, orice alterare a unui câmp existent se regăseste automat în înregistrările din SGBD aferent postărilor ulterioare alterării.

De asemenea, portalul permite proiectarea şi deployment-ul în modul productiv a oricâtor formulare noi de către administratorul de portal fără ca acesta să intervină asupra bazelor de date pentru eventuale proiectări de tabele/structuri.

Operarea back-end a datelor

Datele generate în urma completării valide a cererii de serviciu sunt transmise automat printr-un apel la serviciul de preluare al sistemului de gestiune documente SMD. Pentru depunerea securizată toată comunicarea între portalul de servicii (din extranet) şi sistemul de management de documente SMD (aflat în intranet) se face pe un canal criptat, pe un port securizat. Pentru validarea de încredere, portalul generează un token cu credenţialele oferite de platforma de management de documente care este depus împreună cu datele aferente serviciului solicitat.

Serviciul de preluare: 

  • preia datele depuse într-o structură auto-descriptivă;
  • preia ataşamentele ce însoţesc solicitarea;
  • validează solicitarea în conformitate cu structurile proprii; 
  • înregistrează solicitarea validată în sistemul de gestiune documente; 
  • generează şi returnează numărul/numerele din registrele aferente fiecărei solicitări în parte.

 

Solicitările aflate în portal sunt sincronizate de acesta prin apeluri din sistemul de management de documente SMD ori de câte ori apar informaţii noi/modificate:

  • La înregistrarea cererii din portal;
  • La apariţia unei situaţii de clarificare (solicitare documente suplimentare/clarificare);
  • La generarea şi aprobarea actului rezultat.

 

Portalul pune la dispoziţie un serviciu web de sincronizare a datelor folosind tot o comunicare criptată cu token-ul generat de platforma aplicativă de gestiune documente şi validat de portal.

 

Updated on:  June 5, 2018