Autentifikace v Apache pres MySQL
Radek_Sedmak na eurotel.cz
Radek_Sedmak na eurotel.cz
Čtvrtek Leden 27 17:14:22 CET 2000
> > uzivatel 3: b d). Overovani pomoci PHP nejde - v kazdem adresari budou
> > nejake soubory, ktere si dany uzivatel bude moct rovnou stahnout. Taky
>
> Tomu neverim, v PHP jde vsechno :-) , ty soubory mohou byt napr. v DB
> a pak s nima muzes delat co chces a posilat je komu chces a dle ceho chces.
>
Souhlas prikladam skriptik ktery toto resi, jinak nebude asi nic tezkeho
nahradit Oraclovskou cast za MySQL :))))
<?
if(!isset($PHP_AUTH_USER)) {
Header("WWW-authenticate: basic realm=\"EUROTEL\"");
Header("HTTP/1.0 401 Unauthorized");
$title="Login instructions";
echo"<blockquote> Pristup na tento WEB je pouze pro registrovane uzivatele.
V pripade ze nemate prideleno pristupove jmeno a heslo muzete se nechat
zaregistrovat. V pripade ze jste jiz zaregistrovani a nedari se vam
authentifikace informujte prosim sprave mailem na adr ...</blockquote>";
} else {
$conn=Ora_Logon("user na instance","password");
$cur=Ora_Open($conn);
$RESULT=-999;
Ora_Parse($cur,"DECLARE tTmp INTEGER; BEGIN
:tTmp:=WEBADMIN.CHECK_ACCESS(:usr,:pwd); END;");
Ora_Bind($cur,"PHP_AUTH_USER",":usr",20,1);
Ora_Bind($cur,"PHP_AUTH_PW",":pwd",20,1);
Ora_Bind($cur,"RESULT",":tTmp",10,2);
Ora_Exec($cur);
Ora_Close($cur);
Ora_Logoff($conn);
if ( $RESULT<=0 ) {
Header("WWW-authenticate: basic realm=\"EUROTEL\"");
Header("HTTP/1.0 401 Unauthorized");
$title="Login instructions";
echo "<blockquote>Nemate opravneni pro vstup do tohoto systemu. V pripade
nejsnosti kontaktujte administratora</blcokquote>";
exit;
}
}
?>
Další informace o konferenci Linux