Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] $this->getUser()->clearCredentials(); nie działą, dlaczego
stachuf11
post
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


Witam
Dlaczego polecenie $this->getUser()->clearCredentials(); nie czyści mi Credentials, po wywołaniu tego polecenia,
pobieram informacje z $this->getUser()->getAttribute tak jak przed czyszczeniem, dlaczego
Stachu
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
stachuf11
post
Post #2





Grupa: Zarejestrowani
Postów: 154
Pomógł: 1
Dołączył: 24.04.2006

Ostrzeżenie: (0%)
-----


No wiadomo że
  1. <?php
  2. $sesia->setAttribute('daty',$staredaty,'rezerwacja');
  3. ?>

ustawia atrybut 'daty' do kredentiala 'rezerwacja' o wartosci $staredaty
a
  1. <?php
  2. $daty=$this->getUser()->getAttribute('daty','','rezerwacja');
  3. ?>


pobiera wartość atrybutu 'daty' z credentiala 'rezerwacja', ale ta odpowiedz nie pomoze mi w rozwiazaniu problemu, jak usunąć atrybut 'daty' z credentiala 'rezerwacja'.
pozdrawiam
Stachu
Go to the top of the page
+Quote Post
mike
post
Post #3





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

Ostrzeżenie: (0%)
-----


Cytat(stachuf11 @ 21.01.2008, 12:10:59 ) *
ustawia atrybut 'daty' do kredentiala 'rezerwacja' o wartosci $staredaty
(...)
pobiera wartość atrybutu 'daty' z credentiala 'rezerwacja',
Obawiam się, że masz problem dlatego że pomieszałeś dwie rzeczy.
I Attributes i Credentials są zapisywane do sesji. Natomiast to są rozłączne rzeczy.
Attributes to po prostu atrybuty użytkownika, to nie są uprawnienia! Możesz tam wrzucać dowolne informacje związane z użytkownikiem, do których chcesz mieć dostęp podczas sesji użytkownika.
Nadawanie użytkownikowi praw to Credentials. Jeśli je wyczyścisz to nie ma on praw dostępu, które miał. Ale nie ma to żadnego związku z atrybutami pozostałej sesji.

Twój problem polega na tym że do atrybutów (Attributes) wkładasz informacje związane z uprawnieniami (Credentials) a nie ma takiej potrzeby.
Jeśli natomiast już tak masz co samo removeCredential() nie wystarczy bo to usunie uprawnienia z Credentials a że Ty masz je zapisane również w Attributes to musisz sam stamtąd je wywalić.

Przeczytaj sobie dokładnie The Book :: Action Security. Zrozumiesz ten mechanizm.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 2.10.2025 - 17:43