31 ianuarie 2024

Exemplu de lucru pe biți: privilegii in BD

Lista de privilegii = intrări într-un dicționar, cu valoarea = puteri ale lui 2.

1 Citire articole

2 Scriere articole

4 Aprobare membri noi

8 Dezactivare membri

16 Editare articole


Utilizatori/entități din BD: au asociată o mască = suma privilegiilor pe care le au.

1 user1 1 ...

2 user2 3 ...

3 user3 15 ...

4 user4 31 ...

User1: poate doar citi
User2: citire, scriere articole
User3: toate drepturile, mai puțin Editare articole
User4: toate drepturile

public static boolean isActionAllowed(int requiredPriv, int userMask) {
return (requiredPriv & userMask) > 0;
}

Niciun comentariu: