Jimmy wrote:
> "Peter Sepstrup" <peter@_REMOVE_sepstrupnet.dk> wrote in message
> news:3f0563bd$0$48914$edfadb0f@dtext02.news.tele.dk...
[snip]
>>>På en Linux er der oprettet en række brugere.
>>>Der afvikles Apache og php på samme maskine.
>>>
>>>Jeg ønsker at give adgang til en række sider, hvis brugeren er logget ind.
>>>Hans brugernavn og adgangskode skal være dem, han er oprettet på maskinen
>>>med og derfor læses fra passwordfilen, så der er minimal administration,
>>>når brugere skifter adgangskode mv.
[snip]
>
> Ikke nødvendigvis med htaccess.
>
> Det vigtige er blot, at php kan undersøge, om et user/pass svarer til en
> gyldig bruger på maskinen.
Hej Jimmy.
Jeg går så ud fra at du _har_ tænkt over den sikkerhedsbrist der ligger
i at gøre det du taler om - hvis ikke du har det vil jeg da anbefale at
du spørger om det i en ny tråd (måske ovenikøbet i en anden gruppe
f.eks. dk.edb.sikkerhed). NB! Jeg har ikke selv gennemtænkt
sikkerhedsrisici i det scenarie du opstiller, bare lynhurtigt
konkluderet at jeg ikke ville lave sådan en løsning, men...
Metoden at gøre det på er nok noget med at bruger funktionerne file og
crypt.
I en kommentar til crypt, er der f.eks. en der har skrevet følgende
kodestump:
$user = "user";
$pass = "pass";
$autharray = file("/etc/shadow");
for ($x = 0; $x < count($autharray); $x++)
{
if (eregi("^$user:", $autharray[$x]))
{
$passwd = explode(":", $autharray[$x]);
$salt = substr($passwd[1],0,11);
$cryptpw = crypt($pass,$salt);
if ($cryptpw == $passwd[1])
{
echo "Login ok";
} else {
echo "Error login failed";
}
}
}
Det er da vist rimelig nemt at lave til en funktion, du kan bruge til noget.
MVH Per Thomsen,
http://www.pert.dk/