Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [CakePHP]Szyfrowanie hasła
polkom21
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 22.07.2011

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


Siemka. Ostatnio tak jakoś wziąłem się za ogarnięcie jakiegoś frameworku i przypadło akurat na cakephp. Po kilkunastu godzinach grzebania zaczęło mi coś wychodzić. Teraz natomiast mam problem z hashowaniem hasła. W modelu mam coś takiego:
  1. App::uses('SimplePasswordHasher', 'Controller/Component/Auth');
  2.  
  3. class User extends AppModel {
  4.  
  5. public function beforeSave($options = array()) {
  6. if (!$this->id) {
  7. $passwordHasher = new SimplePasswordHasher();
  8. $this->data['User']['password'] = $passwordHasher->hash($this->data['User']['password']);
  9. }
  10. return true;
  11. }
  12.  
  13. public $components = array(
  14. 'Auth' => array(
  15. 'authenticate' => array(
  16. 'Form' => array(
  17. 'passwordHasher' => array(
  18. 'className' => 'Simple',
  19. 'hashType' => 'sha256'
  20. )
  21. )
  22. )
  23. )
  24. );

Podpowie ktoś coś co zrobić, żeby to w końcu zaczęło działać jak należy?

EDIT:
Odkryłem, że funkcja beforeSave w ogóle jest pomijana tylko pytanie czemu :/

Ten post edytował polkom21 13.08.2013, 12:10:48
Go to the top of the page
+Quote Post
kleus
post
Post #2





Grupa: Zarejestrowani
Postów: 93
Pomógł: 7
Dołączył: 22.10.2009
Skąd: Siędzę

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


Funkcja jest pomijana ponieważ przy zapisie nowego wpisu do bazy danych cake nie przesyla id, bo go nie ma.
nastepna sprawa to taka ze zamiast meczyc sie z jakims wlasnym szyfrowaniem hasla mozesz uzyc domyslnej metody cake'a smile.gif
a wyglada to tak

  1. App::uses('AuthComponent', 'Controller/Component');
  2. class User extends AppModel {
  3. public function beforeSave($options = array()) {
  4. if(isset($this->data[$this->alias]['password'])) {
  5. $this->data[$this->alias]['password'] = AuthComponent::password($this->data[$this->alias]['password']);
  6. }
  7.  
  8. return true;
  9. }
  10. }


Taki sposób załatawia sprawe z zapisem nowego usera, zmianą hasła usera i automatycznie działa z domyslnym logowaniem przez Auth cake smile.gif


Wystarczylo zerknąc do swiętenj dokumentacji cake smile.gif
pozdrawiam

Ten post edytował kleus 16.08.2013, 20:08:40
Go to the top of the page
+Quote Post
polkom21
post
Post #3





Grupa: Zarejestrowani
Postów: 47
Pomógł: 0
Dołączył: 22.07.2011

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


Coś chyba z nazwami plików pomieszałem bo w ogóle nie chodzi mi nawet validator od formularza. Na razie nie mam na to czasu. Później może jak się znajdzie chwila to pozmieniam wszystko i może zacznie działać jak należy.
Go to the top of the page
+Quote Post

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: 19.08.2025 - 08:55