quickstart špátné přihlašovací údaje

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Domki
Člen | 310
+
0
-

Chtěl bych se zeptat laděnka mi píše Nette\Security\AuthenticationException #2

The password is incorrect.
Takže mám špatně heslo
Ale přitom zadávám jméno admin a heslo adin stejne jako je v dtb kterou mam stazenou z qs
to samí i kdyz pouziju john john
Kde je teda chyba? pod hashem se skrývá jiné heslo? Víte někdo jaké?

Díky

Šaman
Člen | 2666
+
0
-

Ahoj, to nikdo neví :)
Musíš si zahrát na hackera a v metodě autenticatoru autenticate() zakomentovat kontrolu shody zahashovaného hesla s tímz db. Pak ti projde jakékoliv heslo a budeš se moci přihlásit z heslo změnit.

Domki
Člen | 310
+
0
-

No tak to je sice, pěkný to už jsem někde tu taky našel.
Ale to si pak můžu udělat sám registraci a je.

Spíš by mě zajímalo proč v quickstartu, což je takovej vstup do Nette(snad az na quickstart suprovýho frameworku), nejsou správné údaje…
A to se nejedná jen o hesla i další věci se mi tam zdáli takové zmatené..

Domki
Člen | 310
+
0
-

Jo Tak dík za radu, ted jsem to teda zkusil dopsat změnu hesla a že si je změním.
Ale opět nastal problém, doufám že se u toho nezamotám už v tom mam docela zmatek co sem kde měnil =D

Když jsem chtěl změnit heslo tak to nešlo a vyskočila ladenka. A to že to nemohlo najít Authenticator::calculateHash($password) co se vola z metody setPassword v userRepository.. Zkousel sem nak pridat do configu a Authnticator.php namespace Todo coz sem nasel dole v komentarich i v githubu ale zase neslo.
Navíc jsem zjistil ze na github je metoda setPassword v Authenticator.php a ne v userRepository jak v qs.
A to samý volání teto metody v qs
je: $this->userRepository->setPassword($user->getId(), $values->newPassword);
a v github: $this->authenticator->setPassword($user->getId(), $values->newPassword);

Tak jsem to zkusil nějak předělat sám.
Tak se chci zeptat jestli to je ok a není tam třeba nějaká bezp. chyba.
v User Presenteru volam:
$this->authenticator->setPassword($user->getId(), $values->newPassword);
A v souboru Authenticator.php mam metodu:

<?php
public function setPassword($id, $password)
	{
		 $this->database->table('user')->where('id', $id)->update(array(
			'password' => $this->calculateHash($password),
		));
	}

?>

Tak díky za kontrolu.

Editoval Domki (25. 6. 2013 22:03)