FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT IOAN SLAVICI [616360]
FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT “IOAN SLAVICI”
TIMIȘOARA
UNIVERSITATEA “IOAN SLAVICI” TIMIȘOARA
FACULTATEA DE INGINERIE
DOMENIUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚIEI
FORMA DE ÎNVĂȚĂMÂNT – ZI
PROIECT DE DIPLOMĂ
COORDONATOR ȘTIINȚIFIC:
Conf.univ.dr. Gabriela -Victoria MNERIE
ABSOLVENT: [anonimizat]
2017
FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT “IOAN SLAVICI”
TIMIȘOARA
UNIVERSITATEA “IOAN SLAVICI” TIMIȘOARA
FACULTATEA DE INGINERIE
DOMENIUL CALCULATOARE ȘI TEHNOLOGIA INFORMAȚIEI
FORMA DE ÎNVĂȚĂMÂNT – ZI
Administrarea Bazelor de Date cu
Active Directory
COORDONATOR ȘTIINȚIFIC:
Conf.univ.dr. Gabriela -Victoria MNERIE
ABSOLVENT: [anonimizat]
2017
UNIVERSITATEA DIN ORADEA
FACULTATEA de Inginerie Electrică și Tehnologia Informației
DEPARTAMENTUL Calculatoare și Tehnologia I nformației
TEMA
Proiectul de Finalizare a studiilor a student: [anonimizat]
1). Tema proiectului de finalizare a studiilor: Administrarea Bazelor de date cu Active
Directory
2). Termenul pentru predarea proiectului de diplomă IUNIE 2017
3). Elemente inițiale pentru elaborarea proiectului de finalizare a studiilor
• planul lucrării
• materialele bibliografice
• locul de muncă
• aplicația
4). Conținutul proiectului de finalizare a studiilor :
I. CAPITOL UL I: INTRODUCERE Î N BAZE DE DATE
II. CAPITOLUL AL II -LEA : FUNDAMENTAREA TEORETICĂ
III. CAPITOLUL AL IV -LEA: Active Directory
IV. CAPITOLUL AL VII -LEA: APLICATII
V. CONCLUZII
VI. BIBLIOGRAFIE
VII. ANEXE
5). Material grafic:
– figuri , grafice, poze, scheme, print screen -uri
6). Locul de documentare pentru elaborarea proiectului de diplomă:
• Biblioteca Universității „Ioan Slavici” Timișoara
• Laboratoarele de calculatoare ale Universității „Ioan Slavici” Timișoara
• Atos IT Solutions and Services Timișoara
7). Data emiterii temei aprilie 2017
Coordonator științific
Conf.univ.dr. Gabriela -Victoria MNERIE
UNIVERSITATEA DIN OR ADEA
FACULTATEA DE INGINERIE ELECTRICĂ
ȘI TEHNOLOGIA INFORMAȚIEI
Adresa Oradea, Cod 410087, Bihor, Romania, Strada Universității , nr. 1 ,
Tel/Fax :+40 259/408412, Tel:+40 259/408104; +40 259/408204
REFERAT
PRIVIND PROIECTUL DE DIPLOMĂ
A
ABSOLVENT: [anonimizat] / ABSOLVENT: [anonimizat] : Florin -Giorgian Samfireag
DOMENIUL Calculatoare și Tehnologia I nformației
SPECIALIZAREA Tehnologia informației
PROMOȚIA 2017
1. Titlul proiectului: Administrarea Bazelor de date cu Active Directory
2. Structura proiectului
I. CAPITOLUL I: INTRODUCERE ÎN BAZE DE DATE
II. CAPITOLUL AL II -LEA: FUNDAMENTAREA TEORETICĂ
III. CAPITOLUL AL IV -LEA: Active Directory
IV. CAPITOLUL AL VII -LEA: APLICATII
V. CONCLUZII
VI. BIBLIOGRAFIE
VII. ANEXE
3. Aprecieri asupra conținutului proiectului de DIPLOMĂ ( finalizare a studiilor ),
mod de abordare, complexitate, actualitate, deficiențe
Conținutul lucrării face referire la importanța bazelor de date în orice sector ș i domeniu de
activitate.
Atât modul de abordare cât și complexitatea lucrării vor fi în concordanță cu sistemul si
standardul impus de către Universitatea “Ioan Slavici” din Timișoara .
Trăind într -o societate tot mai tehnologizata și în cont inua evoluție am decis ca scopul acestei
lucrări sa fie de actualitate pentru a menține pasul cu tehnologiile actuale din piață creând o baza
de date pentru angajații companiei.
4. Aprecieri asupra proiectului (se va menționa: numărul titlurilor bibliografice
consultate, frecvența notelor de subsol, calitatea și diversitatea surselor
consultate; modul în care absolventul a prelucrat informațiile din surse
teoretice)
S-a folosit o gam ă variată de titluri bibliografice aproximativ…, reușind să prelucrez informațiile
din sursele citate și frecvența trimiterilor bibliografice la un nivel ridicat pentru a sublinia sursele
folosite în această lucrare.
(se va menționa : opțional locul de do cumentare și modul în care absolventul a realizat
cercetarea menționând u-se contribuția autorului)
Documentarea a fost făcută în cadrul locului de muncă Atos I.T. Solutions and Services
Timișoara precum și în cadrul Facultății de Inginerie Ioan Slavici, bi blioteca si laboratoare.
5. Concluzii (coordonatorul proiectului trebuie să aprecieze valoarea proiectului
întocmit, relevanța studiului întreprins, competențele absolventului,
rigurozitatea pe parcursul elaborării proiectului, consecvența și seriozitatea de
care a dat dovadă absolventul pe parcurs)
…………………………………………………………………………………………………………….. ………………………….
………………………………….. …………………………………………………………………………………………………….
…………………………………………………………………………………………………………….. ……………. ……………
…………………………………………………………………………………………………………….. ………………………….
……………
…………………………………………………………… ……………………………………………………………………………
…………………………………………………………………………………………………………….. ………………………….
…………. …………………………………………………………………………………………………………….. ………………
…………
6. Redactarea proiectului respectă ………………………………………………………. . cerințele
academice de redactare ( părți , capitole, subcapitole, note de subsol și
bibliografie).
7. Consider că proiectul îndeplinește / nu îndeplinește condițiile pentru susținere în
sesiunea de Examen de LICENȚĂ ( finalizare a studiilor ) din IULIE 2017 și
propun acordarea notei ………………
Oradea,
Data Coordonator științific
CUPRINS
I . CAPITOL UL I: INTRODUCERE Î N BAZE DE DATE
II. CAPITOLUL AL II -LEA : FUNDAMENTAREA TEORETICĂ
2.1 Ce este o bază de date?
2.1.1 Arhitectura unei baze de date
2.1.2 Modelul logic al datelor
2.1.3 Modele de baze de date
2.1.4 Forme normale ale bazelor de date relaționale
2.1.5 Proiectarea bazelor de date
2.1.6 Integritate
2.1.7 Securitate
2.2 Tehnologii utilizate în aplicație
2.2.1 Active Directory D omain Controller
2.2.2 Virtual box VMR
2.2.3 Windows server 2012 R2
2.2.4 DNS și DHCP
III. CAPITOLUL AL III -LEA: PRINCIPII DE FUNCȚIO NARE A UNEI REȚELE
IV. CAP ITOLUL AL IV-LEA: APLICAȚ II
V. CONCLUZII
VI. BIBLIOGRAFIE
VII. ANEXE
CAPITOLUL I: INTRODUCERE Î N BAZE DE DATE
Conținutul lucrării face referire dezvoltarea sistemelor de baze de date, ce este un domeniu de
reală importanță în tehnologia informației . Fără ace astă parte , diverse instituții și servicii nu și -ar
putea desfășura activitatea , fiind dependente de funcționarea corectă și neîntreruptă a sistemelor
de baze de date.
Sistemele de baze de date fac parte din viața noastră de zi cu zi, dacă ne uitam în jur majoritatea
persoanelor au activități ce implica interacțiunea cu o bază de date : fie ca mergem la un
bancomat, fie ca facem o rez ervare online, fie ca mergem cumpărături, toate ace ste instituții au o
baza de date ca să ne facă noua viața mai ușoară.
Bazele de date sunt de diferite mărimi și pot avea complexități variate, fie ca sunt câteva zeci de
înregistrări, de exemplu telefonul care îl folosim zilnic, are o bază de date cu un nu măr mic de
înregistrări, față de capacitatea unei baze de date de la o firmă unde sunt înregistrări de ordinul
milioanelor.
Sistemele de baze de date sunt indispensabile în societatea în care trăim, societatea modernă se
bazează pe eficacitatea lor, fiind în continuă schimbare și într -o continuă mișcare avem nevoie
sisteme bine organizate care să ne ajute în dependența noastră de mediul tehnologizat.
În lucrarea ce urmează, veți găsii propunerea mea de ……
CAPITOLUL AL II -LEA : FUNDAMENTAREA TEORETICĂ
Vom începe acest capitol prin a ne pune întrebarea : Ce este o bază de date?
Pentru a vedea ce este o bază de date pornim de la ideea de bază, și anume că este o grupare de
date cu o strânsă legătură între ele, destinate unui grup de utilizatori.
O baza de date este formată dintr -una sau mai multe colecții de date. Baza de date include
stocarea si manipularea datelor. Baza de date face administrarea datelor mult mai facila, spre
exemplu: “ Facebook, trebuie să stocheze, să manipuleze și să prezinte date legate de membri,
prietenii lor, activitățile membrilor, mesaje, reclame și multe altele ”.
O definiție într -un sens mai restrâns a unei baze de date este următoarea:
O bază de date este o colecție de date centralizate, create și mențin ută computerizat, în scopul
prelucrării datelor în contextual unui set de aplicații. Prelucrarea datelor se referă la operațiile
de introducere, ștergere, actualizare și interogare a datelor. [1]
O bază de date trebuie să aibă următoarele proprietăți :
• să fie o colecție de date corelate logic
• să aibă un domeniu stabilit, sa fie destinată unui grup de utilizatori și să se adreseze unui
grup de aplicații specifice.
• să fie compacte, pentru a avea un control centralizat asupra datelor
• să aibă o viteză mare de reg ăsire și actualizare a datelor
• să fie flexibile în privința modificărilor structurii
• sa aibă posibilitatea introducerii standardelor și să mențină independența și integritatea
datelor prin politica de securitate.
Pentru a avea o vedere de ansamblu asupra bazelor de date vom face o clasificare a acestora,
după :
• Modelul de date și aici avem :
• Modelul de date ierarhic (Hierarchical Model) fiind primul model folosit pentru
dezvoltarea bazelor de date acesta conține o structură ierarhică de înregistrări de
date conectate prin link -uri.
• Modelul de date rețea (Network Model) utilizează o structură de graf pentru
schema conceptuală a bazei de date, este modelul in care datele sunt reprezentate
ierarhic.
• Modelul de date relațional ( Relational Model) este modelul cel mai folosit in
prezent in gestiunea bazelor de date, acesta păstrează structurarea datelor în
relații dar adaugă posibilitatea definirii unor noi tipuri de date .
• Modelul de date orientat obiect (Object Model) se bazează pe limbaje de
programare orientate pe obiecte, în care datele sunt independente față de
programele care le creează sau accesează.
• Numărul de utilizatori:
• Baze de date multiutilizator acestea permit ca mai mulți utilizatori sa acceseze în
același timp aceeași bază de date.
• Baze de date monoutilizator acestea se pot accesa de un singur utilizator.
• Numărul de stații pe care e stocată baza de date
• Baze de date centralizate (Centralized Database System) aici datele și sistemul de
gestiune sunt stocate pe un singur calculator.
• Baze de date distribuite (Distributed Database System) aici datele și sistemul de
• gestiune sunt distribuite pe mai multe calculatoare printr -o rețea de comunicație.
2.2.1 Arhitect ura bazelor de date
Pentru a vedea cum funcționează o bază de date trebuie să pornim de la Arhitectura bazelor de
date.
Pentru a asigura independența fizică si logică a datelor se impune adoptarea unei arhitecturi
organizată pe cel puțin 3 nivele( arhitectura ANSI -SPARC) :
• Nivelul intern – este reprezentat de partea fiz ică a bazei de date, ne prezintă cu m sunt
stocate datele, conținând datele fizice la care se adaugă diverse structuri auxiliare, cum ar
fi directoare, indexuri, pointeri.
– aici se tratează probleme precum alocarea spațiului de stocare pentru
date și indexuri , descrierea înregistrărilor pentru stocare , plasarea înregistrărilor , tehnici
de comprima re a datelor și de codificare a acestora .
• nivelul concep tual – acesta descrie ce date sunt stocate și relațiile dintre acestea, el
integrează viziunile tuturor utilizatorilor asupra bazei de date, reprezentat de toate
entitățile, atributele și relațiile dintre ele , constrângeri asupra datelor , informații
semantice asupra datelor , informații privind securitatea și integritatea .
• nivelul extern – este reprezentat de viziunea utilizatorului, el este derivat din cel
conceptual, unde utilizatorii au acces doar la părțile bine definite din baza de date, fiind
ascunse părțile care nu interesează.
Fig. 2 .1 Arhitectura bazei de date
Pentru a implementa un sistem de gestiune a bazelor de date multiutilizator, avem 3 tipuri de
arhitecturi :
• Arhitectura tradițională , teleprocesarea , la care există un
calculator cu o singura unitate CPU și un număr de
terminale, așa cum este ilustrat in Fig. 2 .2, această
arhitectură punea o presiune mare asupra calculatorului
central, așa că odată cu dezvoltarea PC și a rețelelor de
comunicație dintre calculatoare , s-a început înlocuirea
calculatoarelor mainframe cu rețele de calculatoare
personale (PC) care obțin rezultate identice sau chiar mai
avantajoase.
Fig.2 .2 Teleprocesarea
• Arhitectura fișier – server cuprinde fișierele cerute
de programele aplicații PA și sistemul general de
baze de date SGBD. În acest mediu procesarea este
distribuită in rețea locală (LAN), dar fiindcă există
un trafic mare pe rețea și fiecare stație de lucru
necesită o copie a siste mului , face ca această
arhitectură să nu fie cea mai favorabilă dacă mai
mulți utilizatori accesează aceeași baza de date.
Fig. 2.3 Arhitectura fișier – server
• Arhitectura client – server a fost creată pentru a
acoperii golurile celor primelor două abordări,
aceasta arata modul în care interacționează
componentele de software pentru a forma un
sistem , de aceea acest tip de arhitectura permite un
acces mai larg la bazele de date existente, are
performanțe mai crescute, totul se transpune destul
de natural într -o arhitectura de sisteme deschise.
Fig.2.4 Arhitectura client – server
2.1.2 Modelul logic al datelor
Probabil cea mai importantă parte în construcția u nei baze de date este determinarea
informațiilor relevante pentru sistem și a relațiilor dintre ele .
De exemplu dacă ni se dă un sistem real, pentru a construi o baza de date corespunzătoare trebuie
să facem prima dată o apreciere generală a sistemului, cum ar fi structura lui, elementele
esențiale și să creăm un model informațional în care sunt cuprinse principalele funcții și fluxul de
informații de sistem.
Pentru a crea o aplicație trebuie luată în considerare vederea utilizatorilor, fiind un pas impor tant
în crearea unei baze de date, folosirea vederilor permite independența logică a datelor î n sensul
ca informațiile și programele utilizatorilor nu sunt dependente doar de structura logica a baze i de
date și aceasta ce se poate modifica î n timp prin extindere sau restructurare.
Făcându -se o structură generală a aplicației și intervievând persoanele ce vor utiliza acea parte
din sistem se poate construi un model de informații pentru vederea respectivă. Se pleacă de la o
schiță grafică cu elementele pri ncipale și pe parcurs ce se înaintează în proiect sunt făcute
corecturile necesare.
Construirea vederilor are la bază diferite strategii :
• metoda elementelor componente (Organisation Chart approach) prin care se definesc pe
rând fiecare din elementele comp onente ale vederii;
• integrarea ulterioară (Integration Later) prin punerea de acord a informațiilor comune
diferitelor componente;
• metoda de sus in jos (Top Down approach) î n care detaliile sunt precizate pe nivele
succesive;
• metoda colecției de date (The Data Collection approach) î n care se face o achiziție de
date ce urmează să fie analizate în momentul punerii î n baza de date reținând -se numai
datele utile;
• metoda bazei de date (The Data Base approach) î n care datele sunt achiziționate sub
forma de repr ezentare din baza de date. [3]
Modelarea datelor vizează atât toate date din cadrul bazei de date (s chema/arhitectura datelor)
cât și doar o parte a acestora (subscheme ale bazei de date). Schema și subschema bazei de date
sunt modelele logice ale bazei de date, care au asociate principii generale pentru gestionarea
datelor, manipularea și asigurarea integrității datelor, fără a reflecta modul de reprezentare și
stocare a acest or date pe suportul de memorie.
Avem mai multe tipuri de baze de date după modul de organizare, modul de dispunere pe suport
magnetic a informației și a elementelor componente:
• modele primitive – datele sunt organizate la nivel logic în fișiere , structura de bază este
înregistrarea, mai multe înr egistrări fiind grupate în structuri de tip fișier ;
• baze de date ierarhice – legăturile dintre date sunt ordonate unic, accesul se face numai
prin vârful ierarhiei, un subordonat nu poate avea decât un singur superior direct și nu se
poate ajunge la el dec ât pe o singură cale;
• baze de date în rețea – datele sunt reprezentate ca într -o mulțime de ierarhii, în care un
membru al ei poate avea oricâți superiori, iar la un subordonat se poate ajunge pe mai
multe căi;
• baze de date relaționale – structura de bază a datelor este aceea de relație – tabel,
limbajul SQL (Structured Query Language) este specializat în comenzi d e manipulare la
nivel de tabel . Această mulțime de date modelează un sistem sau un proces din lumea
reală și servește ca suport unei aplicații informatice;
• baze de date distribui te – sunt rezultatul combinării tehnologiei bazelor de date cu cea a
rețelelor de calculatoare. Sunt baze de date logic integrate, dar fizic distribuite pe mai
multe sisteme de calcul.
• modele semantice – orientate spre obi ecte. Aceste modele sunt orientate pe reprezentarea
semnificației datelor. Acest tip de bază de date a apărut din necesitatea gestionării
obiectelor complexe: texte, grafice, hărți, imagini, sunete ( aplicații multimedia) și a
gestionării obiectelor dinamic e: programe, simulări.
2.1.3 Modele de baze de date
„Un model este o abstractizare a unui sistem, care captează cele mai importante trăsături
caracteristice ale sistemului (concepte), relevante din punct de vedere al scopului pentru care se
definește modelul respectiv. Un model de date stabilește reguli de organizare si interpretare a
unei colecții de date.” [4]
Scopul unui model este de a reprezenta datele și de a le face înțelese de utilizator.
Arhitectura ANSI -SPARC a bazei de date, are trei modele de date:
• un model de date extern , pentru a reprezenta vederea fiecărui utilizator
• un model de date conceptual , pentru a reprezenta vederea logică, generală , care este
independentă de SGBD
• un model de date intern , pentru a reprezenta schema conceptuală, în așa fel încât să poată fi
înțeleasă de SGBD [1]
Astfel modelele se pot clasifica în :
• Modele de date bazate pe obiecte
• Modele de date bazate pe înregistrări
• Modele d e date fizice
Pentru a înțelege mai bine conc eptul de baze de date o să facem o scurtă clasificare a fiecărui
model în parte și vom începe cu modelul de baze de date bazat pe obiecte , aici avem cele mai
comune modele :
• Entitate – Relație este una din tehnicile principale de proiectare conceptuală a bazelor de date
• semantic
• funcțional
• orientat spre obiecte , unde este inclusă atât starea cât si comportamentul obiectului.
Modelul se bazează pe o colecție de obiecte , un obiect conține valorile înmagazinate în cadrul
unor variabile instanțiale în interiorul acestor obiecte, mai conține elemente de cod ce operează
asupra acestuia și care se numesc metode . Obiectele ce conțin același tip de valori și aceleași
metode sunt grupate în clase .
Modelul orientat pe obiecte are toate caracteristicile limbajului de programare orientat pe
obiecte, făcând ca modelul relațional să fie coborât la stadiul de depozit de date.
După cum am văzut și î n clasificarea făcută î n introducere bazele d e date bazat e pe înregistrări
se clasifică în:
• Modelul de date ierarhic (Hierarchical Model) fiind primul model folosit pentru
dezvoltarea bazelor de date acesta conține o structură ierarhică de înregistrări de
date conectate prin link -uri.
• Modelul de date rețea (Network Model) utilizează o structură de graf pentru
schema conceptuală a bazei de date, este modelul î n care datele sunt reprezentate
ierarhic.
• Modelul de date relațional ( Relational Model) este modelul cel mai folosit in
prezent in gestiunea bazelor de date, acesta păstrează structurarea datelor în
relații dar adaugă posibilitatea definirii unor noi tipuri de date .
Modelul de date ierarhic
Din punct de vedere istoric, acesta a fost primu l model de date ce a pus fundamentele unui sistem
de gestiune al bazelor de date și a fost dezvoltat de către firma IBM .
Modelul ierarhic luc rează cu grupuri repetitive utilizând structuri de date ce se bazează pe
parcurgerea de sus în jos a unui arbore: datele aflate în înregistrările primare rep rezintă ramurile
arborelui, în timp ce datele ce formează grupurile repetitive reprezintă frunzele acestuia .
Fig. 2.5 Modelul ierarhic
Rădăcina
Părinte
Părinte
Copil
Copil
Copil
Modelul de date rețea
Acest model a fost creat ca o încercare de a rezolva unele dintre problemele modelului ierarhic.
Structura unei baze de date de tip rețea se poate reprezenta cu ajutorul conceptelor de noduri și
seturi. Un nod reprezintă o colecție de înregistrări, în timp ce un set stabilește și repr ezintă
relațiile din cadrul unei bazei de date de tip rețea .
Fig.2.6 Modelul rețea
Modelul relațional de baze de date
Edgar F. Co dd, un cercetător la IBM, numit și părintele modelului relațional, a căutat noi metode
de a manipula cantități mari de date, a încercat să găsească o metoda de a putea aplica structurile
din matematică pentru a rezolva problemele ce le întâlnea.
Modelul relațional ca și orice alt model de date utilizat în proi ectarea logică a bazelor de date
ajută utilizatorul să fie eliberat de cunoașterea detaliilor cu privire la structura fizică și a
metodelor de acces la date, cu alte cuvinte ii ușurează munca.
Modelul de asemenea dispune de tehnici ce ajută administratorul să detecteze și să corecteze
eventualele probleme de proiectare, ce pot să apară o dată cu pregătirea datelor pentru a fi
implementate într -un SGBD concret.
Conform sugestiilor lui Codd, orice model de date trebuie să se bazeze pe 3 componente :
• Structuril e de date
• Constrângerile de integritate – reguli de protecție a datelor efectuate în urma unor
operații incorecte.
• Manipularea datelor – operații predefinite pentru a găsii calea de acces la date.
Structura relațională a datelor
Unul din avantajele m odelul ui relațional constă în omogenitatea lui, toate datele sun structurate
în relații bidimensionale, având ca elemente principale : relațiile, tuplurile, atributele și
domeniile.
Nod proprietar
Nod membru
Set structura
1
M
Fig. 2.7 Baza de date …. (de schimbat poza)
Atributul unei relații este atributul tipului de en titate sau de asociere pe care î l reprezintă relația
respectivă , reprezentând c oloana unei tabele caracterizată printr -un nume. Unele atribute pot
avea rol de chei, de diferite tipuri.
Domeniul este ansamblu de valori posibile pentr u atributele relației . Domeniul poate fi explicit,
enumerând u-se valorile posibile, sau implicit, precizând u-se proprietățile valorilor.
În modelul relațional se poate spune că fiecare tabel reprezintă o relație, atributele fiind niște
identificatori pentr u a diferenția și maca coloanele tabelului, atributele trebuie să fie distincte,
deoarece au un caracter global în baza de date.
Tuplul este înregistrarea dintr -un tabel format dintr -un sir de valori corespunzătoare atributelor.
Ordinea fizica a înregistrărilor sau a câmpurilor dintr -un tabel este complet lipsita de importanta,
iar fiecare înregistrare din tabel este identificata prin intermediul unui câmp care conține o
valoare unica. Aceasta reprezintă cele doua caracteristici a le unei baze de date relaționale care
permit datelor sa existe independent de modul î n care acestea sunt fizic stocate î n calculator.
Relația stabilește o conexiune între două tabele ce sunt corelate logic, ajungând la îmbunătățirea
structurilor de tabel ș i reducerea datelor redundante.
Modelul relațional clasifică relațiile ca fiind de tip
• unu la unu (1:1) ,
Fig. 2.8 Relația 1 :1
• unu la mai mulți (1:m)
Fig. 2.9 Relația 1 :m
• mai mulți la mai mulți (m:m).
Fig. 2.10 Relația m :m
2.1.4 Forme normale ale bazelor de date relaționale
Normalizarea reprezintă proiectul logic al unei baze de date , este un proces de reducere a
redundanțelor și creștere a stabilității unei baze de date.
Normalizarea este folosită cu scopul de a elimina repetăr ile ce generează anomalii de actualizare,
printr -un proces de descompunere a unui tabel în doua sau mai multe tabele.
Așa că o formă normală este reprezentată de un set de reguli utilizate în scopul testării structurii
unui tabel, pentru a fi siguri că str uctura respectivă nu pune probleme la introducerea sau
extragerea datelor.
Putem enumera șase forme normale :
• Prima formă normală (sau FN 1).
Este folosită pentru a simplifica structura unei relații asigurându -ne ca ea nu mai conține
date care mai pot fi descompuse sau date generate de valori repetitive. Prin acțiunea
specifică de descompunere, atributele ce nu respectă aceste condiții sunt plas ate în relații
separate, păstrându -se atribute de legătură care au același tip de dată și aceeași
dimensiune. Fiecare tabel are o cheie primară
• A doua formă normală (sau FN 2).
O relație se află în forma normală doi dacă și numai dacă se află în forma norm ală unu și
dacă depin de funcțional de întreaga cheie, fiecare atribut ce nu face parte din cheie
trebuie să depindă funcțional de întreaga cheie
• A treia formă normală (sau FN 3).
O relație se află în forma normală trei dacă și numai dacă se află în forma n ormală doi și
dacă fiecare atribut care nu face parte din cheie nu poate depinde funcțional de aceasta .
• Forma normală Boyce Codd (sau FNBC).
Este o generalizare a FN 2 și FN 3 așa că fiecare atribut trebuie să depindă de cheie, de
întreaga cheie și de nimi c altceva .
• A patra formă normală (sau FN 4).
Se bazează pe conceptul de dependență multivalorică, O relație se află în forma normală
patru dacă și numai dacă se află în forma normală Bozce -Codd și dacă nu are dependențe
funcționale multivalorice.
• A cincea formă normală (sau FN 5).
Se bazează pe conceptul de dependență de cuplare , O relație se află în forma normală
cinci dacă ea nu poate fi descompusă în alte relații fără a pierde informație . Cu alte
cuvinte, dacă se adaugă un rând suplimentar unei relații care nu se află în forma normală
cinci și dacă această relație se descompune în alte relații , prin refacerea relației inițiale se
obțin înregistrări false.
Fig. 2.11 Forme normale
Scopul formelor normale este acela de a elimina redundanțele fără a pierde informație.
2.1.5 Proiectarea bazelor de date
După ce am văzut ce este o bază de dat e și cum funcționează din punct de vedere arhitectural,
pentru a înțelege mai bine funcționarea unei baze de date vom vedea în continuare o scurtă
introducere în proiectarea bazelor de date.
FN 5FN 4 FNBC FN 3FN 2FN 1
Vom începe prin a răspunde la întrebarea “ce este proiectarea?„ și anume pentru a proiecta o
bază de date trebuie ca aceasta sa corespundă cu cerințele utilizatorilor pentru un anumit set de
aplicații.
În general, vom considera că proiectarea corectă a unei baze de date trebuie să parcurgă
următoarele etape:
• Analiza cererilor și strângerea de informații referitoare la aplicație .
• Proiectarea conceptuală a bazei de date.
• Alegerea unui sistem de gestiune al bazelor de date.
• Proiec tarea logică a bazei de date.
• Proiectarea fizică a bazei de date.
• Implementarea bazei de date și a aplicației . [1]
Așa că o aplicație ce folosește baze de date este realizată cu ajutorul unui sistem de ge stionare a
bazelor de date (SGBD ), acesta este un software de sistem pentru crearea și g estionarea bazelor
de date. SGBD oferă utilizatorilor și administratorilor o modalitate sistematică de a crea, prelua,
actualiza și gestiona datele.
Fig. 2.12 Etapele proiectării unei aplicații
Sistemele SGBD sunt foarte complex, deoarece modulele software din componența unui SGBD
trebuie să permită furnizarea tuturor serviciilor analizate în paragraful precedent.
Fig. 2.13 Componentele principale ale unui SGBD
Pentru a proiecta corect o struct ură de date trebuie ca aceasta să nu prezinte erori din punct de
vedere funcțional, iar scrierea programelor de aplicație să fie cât mai exactă așa că vom dezvolta
puțin acest subiect.
Fiind un domeniu care a evoluat continuu, proiectarea structurii bazelo r de date la momentul
actual asigură un grad ridicat de normalizare a schemelor de relație, păstrează integritatea și este
eliminat subiectivismul proiectantului prin înlocuirea lui cu exactitatea metodei.
Una din etapele importante, în proiectarea unui si stem de baze de date este analiza sistemului ,
în această etapă se realizează o analiză a segmentului ce urmează a fi implementat cum ar fi
cerințele privind conținutul bazei de date, cerințele privind prelucrările asupra aplicației.
Această etapă se ghidează după anumite reguli care ajută proiectant ul în realizarea sa, cum ar fii :
– Analiza activității desfășurate de către beneficiari
– Analiza conținutului de date și a funcționalității aplicațiilor software
– Analiza formularelor tipizate si a altor docum ente utilizate de beneficiar pentru
– realizarea activității respective.
– Identificarea tuturor interdependentelor din tre datele care vor fi stocate î n baza de date și
a restricțiilor privind valorile pe care le pot lua anumite categorii de date.
– Identificare a a prelucrărilor care se declanșează automat atât în cazul modificării bazei de
date cat și la momente prestabilite de timp
– Identificarea operațiilor care sunt necesare beneficiarului in activitatea curenta dar care în
acest moment nu sunt realizate prin intermediul aplicațiilor software folosite precum ș i a
operațiilor care pot fi incluse în mod natural î n noua aplicație.
– Identificarea bazelor de date existente care pot fi folosite de noua aplicație – direct sau
printr -un import inițial de date
– Identif icarea modalităților de transf er de date î ntre noua aplicație și alte aplicații care
rulează deja la beneficiar și care vor fi folosite și î n viitor de către acesta.
– Identificarea necesitaților privind datele ș i prelucrările care pot fi î n viitor necesare
beneficiarului, deci a posibilelor dezvoltări în timp ale aplicației
O altă etapa este proiectarea conceptuală a bazei de date, în cadrul acestei etape se pornește de
la rezultatele analizei de sistem și se realizează modelarea cerințelor privind datele fo losind un
model de nivel înalt, și anume modelul entitate -asociere, acest model este cel mai des folosit
deoarece nu este legat direct de nici unul dintre modelele folosite în sistemul de gestiune, acesta
are algoritmi bine puși la punct și se poate trece ușor la celelalte modele de date, este foarte
intuitiv, poat e sa fie înțeles ușor de nespecialiști, iar proiectarea se face pe porțiuni, diagramele
parțiale putând fi integrate pe baza unor algoritmi și metode puse la punct.
În următoarea etapă se transformă entitățile și asocierile în structura relațională a un ei baze de
date, prin care schema preliminară rezultată, formată din tabele, coloanele acestora (atribute ale
relațiilor) ș i constrângerile de integritate care pot fi deduse automat din diagrama incluzând unele
interdependente în tre date numit e și dependen țe funcționale .
Dependențele funcționale ajută la testarea corecti tudinii unei scheme de relație, acestea
modelează corelații care există între datele din lume a reala stocate în baza de date,.
Dependențele funcționale definesc relația dintre un atribut sau un grup de atribute ale unui tabel
și un alt atribut ale altuia.
În cazul î n care o relație nu are o schema corespunzătoare ea trebuie înlocuita cu doua sau mai
multe relații (operația este numită ș i descompunerea unei scheme de relație), fiecare relație
rezultată având o schemă corectă – aflată î n forma normala dorita.
Întru -un tabel există două categorii de dependențe funcționale, cele determinate de cheile
tabelului, acestea nu produc redundanța datelor și nici anomalii de actualizare a rețelei și cel e în
care atributul determinat nu este o cheie a tabelului, astfel acestea produc redundanță datelor si
anomalii de actualizare.
Constrângerile de cheie sunt constrângeri implicite, proiecta ntul de date nu trebuie să prevadă
nimic suplimentar pentru ca ace ste constrângeri să fie satisfăcute de orice stare a relației, acestea
sunt verificate si impuse automat de sistemul de gestiune.
Dar dependențele funcționale în care atributul determinant nu este o cheie a relației sunt
constrângeri explicite, care nu su nt verificate și nici impuse de sistemul de gestiune.
Verificarea și impunerea acestor dependențe funcționale se poate face numai procedural, prin
triggere, proceduri stocate sau funcții impuse în programele de aplicație .
În ultima etapa se implementează s istemul de gestiune, se realizează crearea structurii bazei de
date obținuta în etapa precedent ă pe baza facilitaților oferite de sistemul de gestiune a bazelor de
date ales. Rezultatul ei este programul de creare scris î n limbajul de definiție a datelor acceptat
de SGBD -ul utilizat.
2.1.6 Integritatea datelor
Nu trebuie să uitam însă să vorbim și despre două aspecte importante cum sunt integritatea și
securitatea datelor.
Gestion area bazelor de date trebuie să îndeplinească și să respe cte un set predefinit de reguli,
unde administratorul bazei de date și programatorul aplicației sunt responsabili de crearea si
definirea acestor reguli.
Restricțiile de integritate sunt definite specific pentru tabele, așa că toate vederile sunt supuse
acestora, diversele tipuri de restricții de integritate permit modelarea bazei de date în concordanța
cu specificul activității, fiind definite pentru a respecta regulile comerciale asociate cu
informațiile din baza de date.
Sunt predefinite mai multe condiții în ceea ce privește r estricțiile de integritate , aici avem :
• Condiții de tip structural, exprimate prin dependențele funcționale sau prin declararea
unor chei cu valori unice
• Condiții aplicabile pe tabele, acestea pot fi unituplu ce impune ca fiecare tuplu al relației
de baz ă ca în câmpurile cheii primare să apară valori diferite de valoarea nula , sau
multituplu , este restricția reverențială care spune că pentru cheile externe, dacă acestea nu
sunt nule, să se admită valori corespunzătoare uneia din cheile primare existente în relația
de referință
• Condiții clasificate și din punct de vedere al momentului în care se aplică, acestea sunt
imediate ce se verifică în momentul în care se efectuează sau amânate , verificate după ce
au fost executate dar înainte de a se modifica baza de date.
• Condiții ce privesc cheile primare și cheile externe , dacă se cunoaște că o cerința este ca
valorile cheilor primare să fie unice, atunci unicitatea chei și integritatea entității sunt
condiții obligatorii
• Condiții pe domenii, acestea sunt restri cții de stare imediate, ele se pot referii la tipul de
date pentru un atribut, la un format, la o lista de valori posibile sau la o procedură care
este apelată de câte ori are loc o modificare pentru domeniul specificat.
Integritatea datelor este strâns co relată cu securitatea datelor.
2.1.7 Securitatea datelor
Securitatea bazelor de date reprezintă protejarea bazelor de date împotriva accesării neautorizate
a lor și î n special a modificărilor și distrugerilor nedorite de date ș i a citirilor nepermise de date.
Pentru a putea realiza securitatea datelo r din baza de date sunt utili zate controale tehnice ș i
administrative.
Securitatea poate fi asociată cu următoarele situații:
• accesul fraudulos al datelor,
• pierderea integrității d atelor,
• pierderea disponibilității datelor,
• pierderea confidențialității datelor
Protejarea datelor împotriva accesului fraudulos este ane voioasa. Este cunoscut faptul că
protejarea absoluta nu este posibila. Fiind posibile numai mă suri de protecție mai mult sau mai
puțin eficiente.
Forme de acces fraudulos ș i intenționat al unei baze de date:
• Citirea neautorizata de date,
• Modificarea neautorizata a datelor,
• Distrugerea voita a datelor.
Pentru a proteja o baza de date se ia măsuri atât la nivel fizic , se interzice accesul persoanelor
neautorizate, la nivel uman, unde se ține o evidență strictă a persoanelor autorizate, la nivel de
sistem de operare, cât și la nivel de SGBD, sistemul oferind anumite facilități care sprijină
protecția datelor.
Pentru a asigura protecția datelor se urmăresc anumite tehnici :
• Prima tehnică este identificarea utilizatorilor, acestora li se oferă drepturi de operare pe
diferite porțiuni din baza de date
• O altă tehnică este protejarea datelor prin criptare
• Tehnica de utiliza re a view -urilor în aplicații, ce poate ascunde o parte din informațiile
din baza de date
Problema securității cuprinde aspecte legale, sociale și etice, furturile și fraudele sunt un factor
de risc pentru întreaga organizație, în Comunitatea Europeană există o preocupare serioasă legată
de actualizarea legislației la noile nevoi generate de utilizarea intensivă a calculatoarelor.
2.2 TEHNOLOGII UTILIZATE ÎN APLICAȚIE
2.2.1 Active Directory Domain C ontroller
Într-un spațiu unde se efectuează mai multe operații de rețea, unde numărul de calculatoare a
crescut , a fost necesar introducerea unui serviciu centralizat care să asigure efectuarea diverselor
operații de rețea.
Un astfel de serviciu și anume un “directory service” cuprinde informații despre obie ctele
interconectate dintr -o anumită privință. Serviciul director ajută la identificarea, localizarea,
organizarea, securizarea și simplificarea accesului la resursele ce le oferă o rețea de calculatoare.
Active D irectory este o tehnologie realizată de Microsoft, pentru rețeaua de domenii Windows,
este o baza de date ce gestionează mai multe date și pune la dispoziție metode centralizate de a
administra resursele unei rețele, organizate în obiecte. Fiecare obiect are un set specific de
atribute, anumite informații care fac o descriere a obiectului.
Fig. 2.14 Obiecte din baza de date AD
În cadrul serverelor Microsoft, un „domain controller” este un server de server care răspunde
solicitărilor de autentificare, securitate (conectare, verificare permisiuni etc.) într -un domeniu
Windows. Un domeniu este un concept introdus în Windows NT, prin care unui utilizator li se
poate acorda acces la un număr de resurse de computer, utilizând o singură combinație de
nume de utilizator și parolă.[5]
Fig.2.15 Funcțion are
Active D irectory permite înregistrarea obiectelor într -o structura ierarhică, aceasta este formată
din două componente :
• Structura logică – ce oferă o organizare a obiectelor, și anume aceasta este dependentă
de modul în care este structur ată organizația, și cum se dorește administrarea acesteia.
Fig. 2.16 Arhitectura Active Directory
• Structura fizică – toate serviciile oferite de Active Directory (aflate sub umbrela
acestuia ) sunt date de serverele ce rulează softul Active Directory, servere le sunt
obiectele fizice ce trebuiesc implementate în rețea. De asemenea trebuie definit modul
în care serverele vor comunica și cum vor fi direcționați useri către ele.
Fig.2.17 Serviciile Active Directory
Fig.2.18 Structura logică și fizică Active Directory
Structura logică este distinctă față de structura fizică, legătura dintre ele se obține prin utilizarea
conceptului și obiectului site, adică așezarea geogra fică a rețelelor, site -urile sunt formate din
obiecte numite subrețele. Obiectele site sunt utilizate pentru a gestiona traficul în rețea, controla
replicarea Active Directory și a ușura găsirea resurselor.
Un site cuprinde una sau mai multe subrețele interconectate la o viteza mare unde funcționează
domain ser ver controller, iar pentru a găsii resursele, acestea trebuie căutate după nume
indiferent de locația lor.
Fig. 2.19 Subrețele
Serviciul Active Directory este folosit în implementarea unei rețele deoarece oferă mai multe
avantaje cum ar fi:
• Permite identificarea fiecărui user al rețelei pe bază de utilizator și parolă
• Permite ca pentru fiecare resursă din rețea să fie configurate liste de acces care expl ică
în detaliu permisiunile pe care le au useri asupra resurselor.
• Permite o administrare centralizată a serverelor și stațiilor de lucru.
• Permite aplicarea unei politici de securitate în cadrul rețelei.
• Domeniile sunt scalabile, pot sa întrețină de la un grup mic de calculatoare la câteva
mii.
Fig. 2.20 Structura logică Active Directory
Instalarea Active Directory
Pentru început trebuie să ne asigurăm ca IP -ul serverului este unul fix, iar adresa de DNS trebuie
sa fie aceeași cu IP -ul serverului.
Trebuie sa promovam serverul la rolul d e Domain Controller și aceasta se face cu comanda
DCPROMO.
Ulterior trebuie să selectam dacă serverul nostru este nou sau
unul existent.
Când domeniul nostru a fost promovat contul local Admin a
devenit contul de administrator de domeniu , trebuie setată o
parolă, după alegem numele domeniului.
Căutăm opțiunea de Windows Server 2012
R2.
Acum trebuie sa alegem locatiile pentru unele
componente Active Directry
Facem reboot și după ne logam în formatul numedomeniu \username.
2.2.2 Virtual box VMR
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: FUNDAȚIA PENTRU CULTURĂ ȘI ÎNVĂȚĂMÂNT IOAN SLAVICI [616360] (ID: 616360)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
