Idei cemi vin in minte in urma cursurilor de la masterul de retele...

Thursday, December 08, 2005

SECURITATE WEB ptr Adinutza

Notiuni:

1. IIS = serverul de web Microsoft( ma rog si de FTP); Serveste pagini HTML (care este un standard acceptat de toate browserele - o sa vezi de ce zic asta). El poate servi pagini statice sau dinamice. Paginile statice sunt cele servite direct din directoare virtuale, si in cazul carora continutul este data clientului asa cum se prezinta. In cazul paginilor dinamice sunt in ultimul timp Object Oriented, de tip ASP .NET sau JSP. Porgramezi in ele lucrand cu obiecte de tip Combo, textbox, etc, exact ca in Windows forms, dar atentie!!! la sfarsit ae loc faza de render a paginii care intoarce tot HTML standard IIS-ului si acesta la client
TOate serviciile sub windows ruleaza sub cont, cu drepturi cat mai mici. IIS-ul ruleaza default sub contul IUSR_[NumeleServerului]

2. DIRECTOARELE VIRTUALE - sunt locatii in serverul de WEB, aici IIS, unde sunt pastrate fisierele sursa si executabile pe baza carora se genereaza raspunsul. Dc acestea sunt HTML se dau direct clientului, dc sunt .aspx, etc, se paseaza procesului ce le poate interpreta si procesa. Dupa procesare HTML-ul intors circula spre client.

ASPNETUL ruleaza sub contul ASPNET. ;)Ai inteles da?

3. ASP.NETUL este un host de aplicatie, ceea se traduce ca un proces total separat de IIS. Cand primeste o cerere si vede ca este .aspx, serverul de web o paseaza ASP.Net-ului care o proceseaza ( obiectual) si la sfarsit ii intoarce HTML. Caci IISul nu stie sa intoarca la clienti decat HTML

4. Baza de date - se poate afla pe acelasi server sau pe altul. SI ea are securitate proprie si/sau integrata cu aplicatia.


Din cele de mai sus rezulta 3 asa-zise gateway-uri ptr aplicatie, la nivelul carora se discuta de securitate: IIS, ASP.NET si BD.

GATEWAY-uri:

1.IIS - tipuri de authentificare:

Anounimous - toata lumea are acces la site (public)
Basic Authentification - se cere parola si user, dar se transmite in clar pe retea
Digest Authentification - se cere parola si user de Account de Windows de pe server sau din domeniul serverului, dar ele se trmit ca user si parola normale, pentru a se putea autentifica si statiile non-Windows
Windows Authentification - parola si user de accont windows, trimise criptat si securizat numai de la un calculator windows catre un sever windows

Obs1: In cazul autentificarii windows(Windows sau digest), credentialele( parola+user) sunt trimise mai departe urmatorului proces( aka ASP.NET, fara a mai trebui ca si acesta sa mai faca la randul lui dubla autentificare; el de fapt face, dar transparent ptr user)

Securitatea IIS se implementeaza la nivel de director virtual si se seteaza din Internet Information Services din Services. Ea nu are nici o leg cu web.config-ul dupa cum o sa vezi mai apoi

Obs2: Securitatea de aici are numai rol de a da acces la fisiere si nu de a restrictiona intrarea la anumite fetureuri ale aplicatiei. Deci, in mare ea ese anonima sau windows. IAr la Windows se trece mai departe tokenul la urmatorul proces

2. ASP.NET-ul tipuri principale:

Obs1: Setarile de securitate alea ASP.NETului se gasesc scriese in fisierele de configurare web.config din directoarele virtuale

Windows authentification - de obicei authentificarea se face in IIS de unde se preia si tokenul de authentificare. Se foloseste mai ales in aplicatii web "interne", adica ce ruleaza pe reteau a locala, sau intr-un domeniu. ALtfel sunt foarte de greu de administrat un numar mare de useri windows. Caci sunt necesari useri windows.
FOrms Authentification - inseamna de fiecare data cand userul incearca sa ceara neautentificat o pagina ca ii va aparea formul de login in care isi va introduce numele si parola. Aceste sunt de obieci tinute intr-o baza de date undeva in back-end-ul aplicatiei


Obs2:In cazul autehtificarii windows, contextul userului care se authentifica poate fi transmit mai departe, baza de date, etc. Atunci este necesar sa se seteze in fisierul de configurare impersonate=true. Dc nu se alege aceasta, tokenul trimis mai departe este cel al ASP.NET-ului, adica cel corespunzator userului ASPNET

3. BD -tipuri:

Windows - se face tot prin prelucrarea tokenului venit; userii windows sunt mapati la anumite drepturi asociate obiectelor sql
SQL Authentification - se face prin user si parola; la fel sunt date anumite drepturi si sunt asociate la anumite obiecte sql

0 Comments:

Post a Comment

<< Home