basic auth - logout

basic auth - logout

Hozzászólások

Nem tudom ti milyen sűrűn használjátok a phpMyadmin-t.
Ezt találtam, mint lehettséges megoldás forrást.
Ott ha a confg.inc-be
$cfg['Servers'][$i]['auth_type'] = 'http'; // Authentication method
akkor az van ami én is csinálok és itt ki lehet lépni.
Viszont nem sikerült átlátnom a megoldást.
Így tud valaki segíteni?

Sziasztok!

Nemrég csináltam meg php-ban basic authentikációt. Az adatok ldapból jönnek. Be is tudok jelentkezni, szoval nincs is semmi gond. Viszont szeretnék egy kijelentkező linket is csinálni. Megnéztem pár példát, ami arról szól, hogy unsetelik a változót:

[code:1:9f167c19cf]if ( isset($_GET['logout']) ){
unset($_SERVER['PHP_AUTH_USER']);
unset($_SERVER['PHP_AUTH_PW']);
exit;
}
[/code:1:9f167c19cf]

Elvileg ilyenkor ki kéne jelentkezni, de ha meghivom az index.php-t akkor simán visszamegy mintha be lennék jelentkezve.

[quote:f9ebe99fc6="FoREE"]sessiont hasznalsz?

Nem inditok session. Azt mondták, hogy itt nem kell.
Vagy kéne?

vajon azert nem kell, mert a session automatikusan indul? (php.ini -ben meg tudod nezni, vagy a phpinfo() fuggvennyel)

vagy egy gyors proba, ird ezt a logout.php vegere:

[code:1:974ba1aeb9]
session_unset();
session_destroy();
[/code:1:974ba1aeb9]

Butcher azt irja, hogy HTTP Basic authenticationt hasznal, tehat nem session authout...

Tudtommal nem lehet logoutolni, legalabbis 4-5 eve meg nem lehetett.

csináltam meg php-ban basic authentikációt

szerintem nem az apache AuthType Basic direktivajara gondol...
ott nincs logout

[quote:50ac935e3c="samson"]Butcher azt irja, hogy HTTP Basic authenticationt hasznal, tehat nem session authout...

Tudtommal nem lehet logoutolni, legalabbis 4-5 eve meg nem lehetett.

Azt irták hogy nem kell session, mert mindent a webszerver intéz. Igazábol nem tudom pontosan mi történik, örülök higy működik :)

Nem lehet logoutolni? Akkor ez van.

kis pontositas:

Ugye a browsert kell ravenni, hogy torolje az auth cachet.

Both Netscape Navigator and Internet Explorer will clear the local browser window's authentication cache for the realm upon receiving a server response of 401. This can effectively "log out" a user, forcing them to re-enter their username and password. Some people use this to "time out" logins, or provide a "log-out" button.

tehat probalkozzal ezzel:
header( "HTTP/1.0 401 Unauthorized");

[quote:094ee2d4d0="samson"]kis pontositas:

Ugye a browsert kell ravenni, hogy torolje az auth cachet.

Both Netscape Navigator and Internet Explorer will clear the local browser window's authentication cache for the realm upon receiving a server response of 401. This can effectively "log out" a user, forcing them to re-enter their username and password. Some people use this to "time out" logins, or provide a "log-out" button.

tehat probalkozzal ezzel:
header( "HTTP/1.0 401 Unauthorized");

Igen ezt is néztem már. Talán ez járt a legközelebb a megoldáshoz.
MIután ezt is belirtam valóban "törlödik" az user + a pw, de ha megint meghivom az index.php-t akkor megint bent vagyok.
Azt nem írtam, hogy .htaccess file intézi az basic authoz nem pedig az index.

de ha megint meghivom az index.php-t akkor megint bent vagyok.

szerintem tuti, hogy sessionben tarolodnak a dolgok.

probald meg a logout vegere irni, amit korabban irtam

[quote:44498c8ae2="FoREE"]

de ha megint meghivom az index.php-t akkor megint bent vagyok.

szerintem tuti, hogy sessionben tarolodnak a dolgok.

probald meg a logout vegere irni, amit korabban irtam

megtörtént:
Warning: session_destroy(): Trying to destroy uninitialized session in /var/www/pmh/basic/index.php on line 39

[quote:62ccacf252="FoREE"]

de ha megint meghivom az index.php-t akkor megint bent vagyok.

szerintem tuti, hogy sessionben tarolodnak a dolgok.

probald meg a logout vegere irni, amit korabban irtam

a http authnak semmi de semmi koze a sessionhoz...

a hibauzenet alapjan valoban nem sessiont hasznal.

az vilagos, hogy az AuthType Basic NEM php feature, de valami megis azt okozza, hogy a php megjegyzi a valtozokat... erre legkezenfekvobb megoldaskent a sessionoket hasznaljak.

de nem php, nem a szerveroldal jegyzi meg, hanem a kliens, ugyanis az kuldi el a http headerben

a session az a szerveroldalon tarolodik. a kliensoldalon egy cookieban van tarolva a sessionazonosito.

a headerben a cookie megy el.

Namost, miutan a user bezarja a bongeszot, a szerveroldalon ugyanugy megmarad a session, es a cookie megmarad a kliensoldalon (persze attol fugg, mikor jar le).

De kar errol beszelnunk, mert a hibauzenet alapjan, amit a kerdezo beidezett, nem session gond van.

igen, jol mondod.

De ennek semmi koze a http basic auth-hoz, ott ugyanis megfelelo headerek hatasara a bongeszo popupot dob fel, bekeri a username/passwd parost, majd szinten headerben elkuldi oket a servernek, es el is TAROLJA oket az auth cacheben(a bongeszo!). Ebbol az auth cachebol kell kiirtani, ha tudod...

Ezt a http basic auth-ot nem sokan használják?
Van valamilyen rossz oldala is?