Tema: Re: asp.net duomenu prieinamumas
Autorius: Jornada Del Muerto
Data: 2009-05-06 19:56:35
> Prireike asp.net aplikacijoje kazkaip realizuot duomenu
> prieinamuma/paslepima priklausomai nuo vartotojo roliu. Esme ta, kad visi
> duomenys yra vienoje DB lenteleje, kuri atvaizduojama i gridview ir
> noreciau, kad tie, kam nepriklauso apie juos zinot, to ir nematytu, nei
> per paieska, nei siaip ziuredami.
> Kadangi asp.net turi labai paprasta naudoti useriu ir roliu mechanizma,
> kur realiai beveik nereikia rasyti kodo, gal ir duomenu prieinamumui yra
> kazkas jau paruosto?
> Ar vistik cia reikia paciam realizuot saugojant prie kiekvieno duomens
> vartotojo roles, kuriems jis prieinamas, o poto pacioje aplikacijoje
> atlikt filtravimus?
Zaisi su visokiais LDAP jei naudosi domain userius ir vistiek savus
kazkokius lygius jiems teks sugalvot ir pan.
As cia daug negalvojas toki paprasta solution duosiu.
Sukuri useriam ar tai ju rolem ir tai duomenu lentai is kur duomenys
atvaizduojami db lauka pvz: AccessLevel pavadinimu.
Daleiskim kuo slaptesni duomenys tuo ju lygis didesnis, tuo didesnis
skaicius AccessLevel lauke
Turi po to pvz.:
Users
Name AccessLevel
Jonas 0
Antanas 1
Rimas 2
Duomenys
Informacija AccessLevel
Info1 0
Info2 0
Info3 1
Info4 2
Info5 3
Prisiloginus useriui paimi jo AccessLevel ir isimeni, tada kai darai
uzklausa:
Select * From DuomenuLenta dl Where dl.AccessLevel <=
{UserioIsimintasAccessLevel}
Jam rodys informacija ne didesnio lygio nei jo vartotojas ar tai jo role
gali matyt.
Jei tai roles ir jam priskirtos kelios roles tai auksciausiu levelio roles
levelis yra kaip pagrindinis jo access levelis.
--
Freelancer Developer
Humoras, Anekdotai ir t.t... http://jokes.lythum.lt