Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Nadawanie uprawnień użytkownikom, oraz grupom
DeyV
post
Post #1





Grupa: Zarząd
Postów: 2 277
Pomógł: 6
Dołączył: 27.12.2002
Skąd: Wołów/Wrocław




Stanąłem przed zadaniem wykonania serwisu, z bardzo rozbudowanym systemem nadawania uprawnień oraz ograniczeń poszczególnym użytkownikom, grupom użytkowników, oraz całej reszcie. Żeby było ciekawej, ma być kilkadziesiąt różnych działów, dla których każdy użytkownik (grupa uż.) może mieć około 7 różnych uprawnień (zapis, odczyt, edycja, odczyt swoich , odczyt grupowych, edycja swoich, edycja grupowych).
Oczywiście różne formularze, ekrany, działy wymagają różnych poziomów uprawnień.
Tyle tytułem wstępu. Niestety, chyba przeoczyłem stosowny wykład (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Stąd moje pytanie brzmi tak: Jak to zmontować?
Moim pierwszym pomysłem było stworzenie łańcuchu (stringa) gdzie każda kolejna pozycja byłaby kolejnym działem, a jej wartość - poziomem uprawnienia np.
pozycja 1 - produkty;
pozycja 2 - kategorie
a np.
1 -odczyt
2 -zapis
3 -edycja itd.

Więc zapis '1 3' oznaczałyby uprawnienie do odczytu z produktów oraz edycji w kategoriach. Powstaje coś w postaci CHMOD, tylko z większą ilością uprawnień.
W ten sposób jednak dosyć trudno utworzyć sumowanie atrybutów (np. mogę odczytywać i zapisywać).
Nie bardzo wiem również, jak testować na podstronie, czy dana osoba ma do tego uprawnienie, czy też nie, tym bardziej, że musi to być w miarę prosta funkcja, gdyż na jednej podstronie może być konieczne wielokrotne jej wywoływanie (choćby testowanie, czy wyświetlić dany link, czy nie).
Kolejny problem = choć wiem, jak stworzyć grupę użytkowników, oraz nadawać jej uprawnienia, to jednak nie mam pomysłu, jak przydzielić jednego użytkownika do kilku grup, a następnie sumować ich uprawnienia (a często może to być przydatne).

Myślę, że jest to dosyć ciekawy temat do rozważań. Więc czy macie jakieś metody lub choćby pomysły?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
itsme
post
Post #2





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




Opis problemu:
Potrzebny jest skrypt, który będzie zarządzał uprawnieniami użytkowników w systemie.

Założenia:
użytkownik będzie mógł należeć do wielu grup
grupy mogą być samodzielne i nadrzędne lub podrzędne
grupy podrzędne winny dziedziczyć wszystkie uprawnienia grupy nadrzędnej, uprawnienia nie mogą być większe od grupy nadrzędnej
użytkownik, który nie należy do żadnej grupy nie ma żadnych uprawnień
wykaz uprawnień: dodawanie, usuwanie, zmienianie, odczytywanie
poszczególne grupy mają możliwość działania (dodawanie, usuwanie, zmienianie, odczytywanie) w poszczególnych działach strony

potrzebne tabele:
user; id, login
user_grupa ; id_user, id_grupa
grupa ; id, nazwa, grupa_nadrzedna
grupa_zespol_uprawnien; id_grupa, id_uprawnienia_zespolu
uprawnienia_zespol ; id, nazwa, id_uprawnien
uprawnienia ; id, nazwa, liczba
dzialy_strony ; id, nazwa
dzialy_strony_grupa ; id_dzialy_strony, id_grupy

oczywiście można to wszystko skrócić do:
user ; id, ;, login
user_grupa ; id_user, id_grupa
grupa ; id, nazwa, grupa_nadrzedna
grupa_zespol_uprawnien ; id_grupa, id_uprawnienia_zespolu
uprawnienia_zespol ; id, nazwa, liczba ; gdzie 1=odczytanie, 2=dodawanie i 1, 3=zmienianie i 2, 4=usuwanie i 3
dzialy_strony ; id, nazwa
dzialy_strony_grupa ; id_dzialy_strony, id_grupy

opis systemu:
Masz działy news, artykuły, download, administracja stroną; .
Tworzysz grupy np. AMIN (4 ; uprawnienia), Moderator (4), gość(1), ;.
Następnie podczepiasz grupy pod działy i za każdym razem, gdy otwierasz stronę sprawdzany jest dział oraz zakres uprawnień dla grupy.

Jestem ciekaw opinii.

Dajcie chociaz znac czy dobrze mysle:(
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 26.12.2025 - 23:59