[zendFramework] proste logowanie, prośba o naprowadzenie :D |
[zendFramework] proste logowanie, prośba o naprowadzenie :D |
14.01.2007, 02:01:06
Post
#1
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 2 Dołączył: 4.03.2003 Skąd: C:/Windows/Temp Ostrzeżenie: (0%) |
Witam
Na początku mój kod http://forum.php.pl/index.php?showtopic=60104 Wszystko działa elegancko ale: Jak/gdzie moge sobie wstawić kod ze sprawdzaniem sesji użytkownika (czy zalogowany czy nie). Nie mam pojęcia w którym miejscu w się to robi, czy w kontrolerze czy w modelu czy może w widoku? Proszę o naprowadzenie gdzie mogę to ugryźć. Szukałem w manualu zenda ale nic nie znalazłem (czyt. przykładu dla opornych) Może mam sprawdzić sesje w indexAction? ta akcja jest wywoływana w moim przykładzie za każdym razem
To niby działa ale tylko na akcje index, i musiałbym wstawiać to w każdej akcji. Więc odpada, pozatym raczej marnie to wygląda Ten post edytował eS... 14.01.2007, 02:07:46 -------------------- |
|
|
14.01.2007, 12:15:38
Post
#2
|
|
Administrator wortalu Grupa: Przyjaciele php.pl Postów: 960 Pomógł: 39 Dołączył: 21.10.2003 Skąd: Kraków Ostrzeżenie: (0%) |
Cytat Jak/gdzie moge sobie wstawić kod ze sprawdzaniem sesji użytkownika (czy zalogowany czy nie). Nie mam pojęcia w którym miejscu w się to robi, czy w kontrolerze czy w modelu czy może w widoku? np. napisać odpowiedni plugin. Przenoszę. |
|
|
14.01.2007, 14:00:11
Post
#3
|
|
Grupa: Zarejestrowani Postów: 367 Pomógł: 2 Dołączył: 4.03.2003 Skąd: C:/Windows/Temp Ostrzeżenie: (0%) |
Heh no to mi pomogłeś :/. Pozatym ja nie chce gotowca więc chyba sie pospieszyłeś z przenoszeniem :/
-------------------- |
|
|
14.01.2007, 14:11:10
Post
#4
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 0 Dołączył: 25.11.2005 Skąd: Warszawa Ostrzeżenie: (0%) |
Tak jak zostało powiedziane, użyj pluginu dla FrontController'a (na dobrą sprawę jest to implementacja wzorca Intercepting Filter).
Przykładowy plugin:
a w głównym pliku strony:
Ten post edytował raikou 14.01.2007, 14:12:33 -------------------- Humans cannot create from nothingness, humans cannot accomplish anything without holding on to something, humans are not gods.
PLD Linux AC / Eclipse 3.2.1 / Firefox 2.0 |
|
|
14.01.2007, 19:43:51
Post
#5
|
|
Administrator wortalu Grupa: Przyjaciele php.pl Postów: 960 Pomógł: 39 Dołączył: 21.10.2003 Skąd: Kraków Ostrzeżenie: (0%) |
Cytat Heh no to mi pomogłeś :/. Pozatym ja nie chce gotowca więc chyba sie pospieszyłeś z przenoszeniem :/ A co ci miałem napisać? Sposób użycia? Przecież to wszystko jest w manualu i to na dodatek po polsku! Nie widze potrzeby (tak jak ~raikou) kopiowania go tutaj. Swoją drogą ten problem był już omawiany na naszym forum, wystarczy poszukać. Co do działu, jest on prawidłowy, ponieważ temat tyczy się frameworka, który jest gotowym skryptem. |
|
|
15.01.2007, 10:43:19
Post
#6
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%) |
Przyłączę się może do tematu. Otóż piszę w ZF stronę, która ma różne obszary dla różnych grup userów. Na razie zwykły user oraz admin, ale w przyszłości będzie to jeszcze bardziej rozbite na prawa. Pytanie czy jest sens używać w taki przypadku pluginów, czy lepiej sprawdzać wszystko w kontrolerze. Myślałem o zastosowania sprawdzenia usera w konstruktorze kontrolera lub w samej akcji.
Przy zastosowaniu pluginów musiałbym posiadać jakąś tablicę zaweirającą informacje o prawach wymaganych przez wszystkie kontrolery oraz akcje, ale może jest jakiś lepszy sposób. |
|
|
15.01.2007, 10:54:29
Post
#7
|
|
Grupa: Zarejestrowani Postów: 453 Pomógł: 22 Dołączył: 20.09.2004 Skąd: Kraków - NH - Ostrzeżenie: (0%) |
stworzyłem logowanie w ZF razem z uproszczonym systemem RBAC. więc tak:
- do logowania i wylogowania używam kontrolera odpowiedzialnego tylko za to - do sprawdzania czy użytkownik jest zalogowany ( poprawny login i hasło) używam plugin`u - plugin także używając ZF:ACL nadaje prawa dla systemu RBAC - w każdej akcji sprawdzam czy dany użytkownik ma prawo do jej uruchomienia jeżeli ktoś będzie chętny mogę udostępnić pliki tylko, że jak na razie są bez dokumentacji. -------------------- Warsztat: Windows 7 Pro 64bit | Apache 2.2 | PHP 5.2 | MySQL 5.0 | PHPmyadmin 2.6.4
|
|
|
15.01.2007, 11:12:58
Post
#8
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 48 Dołączył: 2.11.2005 Skąd: Poznań Ostrzeżenie: (0%) |
Ja chętnie zobaczę to rozwiązanie. Trochę boję się o ACL (w sensie użyywania go) bo jeszcze jest w inkubatorze. Ale za parę dni ma być kolejna wersja i ACL ma już być w Core.
Mail wyślę na priv |
|
|
Wersja Lo-Fi | Aktualny czas: 10.06.2024 - 12:13 |