[linux] Re: Logout in http?

Hugo van der Kooij hvdkooij op vanderkooij.org
Wo Dec 28 22:51:16 CET 2005


On Tue, 27 Dec 2005, Hugo van der Kooij wrote:

> Hoewel de apache docs er op wijzen dat een logout met basic of digest
> authentication heeft iemand wellicht een truukje bedacht hierop.
>
> Ik dacht aan iets simpels als de gebruiker met een andere (verkeerde)
> account op te zadelen in zijn browser zodat het spel weer van voor af aan
> begint. Maar wellicht is er een charmantere manier.

Een beetje ... is nooit alleen. Maar hier mijn 'oplossing' voor mijn eigen
uitdaging.

Afwijkende php pagina die ik logout.php heb gedoopt:

<?php
$referer = $_SERVER["HTTP_REFERER"];
if (headers_sent()) {
   echo "<script
type='text/javascript'>location.href='$referer';</script>";
} else {
   header("Location: $referer");
}
exit;
?>

En dan een afwijkende authenticatie voor deze url in je normale
authenticatie omgeving:

  <Files "logout.php">
    AuthName "Nagios Access"
    AuthType Basic
    AuthUserFile /etc/httpd/dummy.htpasswd
    Require user nobody
  </Files>

De link is dan http://nobody:dummy@site/logout.php en die kan je ergens op
de normale pagina's wel kwijt.

Vergeet niet om je dummy.htpasswd wel te vullen met de nobody user en het
gekozen password.

En vergeet vooral niet dat deze gebruiker verder nergens rechten mag
hebben. Een 'Require valid-user' in je apache config is bij deze dus niet
langer geldig als je de truuk wil laten werken.

Voor mijn toepassing werkt het in ieder geval. (Met een warning van
firefox kan ik leven.)

Hugo.

-- 
	I hate duplicates. Just reply to the relevant mailinglist.
	hvdkooij op vanderkooij.org		http://hvdkooij.xs4all.nl/
		Don't meddle in the affairs of magicians,
		for they are subtle and quick to anger.



More information about the Linux mailing list