[php] Authorization meesturen

Pagina: 1
Acties:

  • a casema user
  • Registratie: Januari 2000
  • Laatst online: 31-08 12:58
Tijdje geleden dat ik hier actief was maar zit met het volgende.

Ik heb een site waarom mensen kunnen inloggen. (dmv cookie en mysql DB)
Nu wil ik wat extra beveiliging inbouwen door een aantal bestanden in beveiligde directory's te zetten (met .htaccess) zodat de buitenwereld deze bestanden niet kan opvragen.
Om te zorgen dat mijn ingelogde gebruikers wel bij deze bestanden komen wil ik met een header het wachtwoord en gebruikersnaam meesturen zodat ze toegang hebben.
Volgens php-manual met headers en de HTTP/1.1 specifications kom ik op de volgende code.

PHP:
1
header('Authorization: Basic dw1deDfDVlgLuWfZUX==');

dw1deDfDVlgLuWfZUX== is opgebouwd door base64_encode(gebruikersnaam:wachtwoord);

maar dit werkt niet want ik krijg gewoon het popupscherm waarin de mensen hun gebruikersnaam en wachtwoord moeten invullen.

ideeen ??

(andere topics in GoT gaven mij ook geen uitsluitsel en google ook niet)
(en de base64 output heb ik natuurlijk wat aangepast)

Taaaa taa taa taaaa taa taa ta taaataaaaa.


  • _-= Erikje =-_
  • Registratie: Maart 2000
  • Laatst online: 12:46
hmm, in de url kun je ze gewoon ftp style ( http://user:passwd@www.hallo.nl/beveiligd ) meesturen, maar dan zien ze wel de gn/ww, hoe het met de header moet (en of het kan) zou ik je niet kunne vertellen

Verwijderd

Ik kan me trouwens niet voorstellen dat je het met een base64 encode mee kunt sturen... Het wachtwoord in een .htpasswd file is bijvoorbeeld 128 bits geencrypt, base64 is geen encrypt methode... Misschien moet je gewoon wachtwoord als htpasswd methode meesturen?
php.net over de functie crypt():
To generate a .htaccess-based authentication with DES, you have to use the first two characters of your password as salt.

PHP:
1
2
$pass = "something";
$ht_pass = crypt($pass,substr($pass,0,2));

  • a casema user
  • Registratie: Januari 2000
  • Laatst online: 31-08 12:58
Verwijderd schreef op 27 september 2002 @ 22:49:
Ik kan me trouwens niet voorstellen dat je het met een base64 encode mee kunt sturen... Het wachtwoord in een .htpasswd file is bijvoorbeeld 128 bits geencrypt, base64 is geen encrypt methode... Misschien moet je gewoon wachtwoord als htpasswd methode meesturen?
php.net over de functie crypt():

[...]
maar hoe verzend ik de header dan ?
Want alleen een password lijkt mij te weinig.

Taaaa taa taa taaaa taa taa ta taaataaaaa.


Verwijderd

http://httpd.apache.org/docs/howto/auth.html
hier staat bar veel informatie over authorization op apache. Waarschijnlijk kun je hier wel iets vinden hoe de browser de headers meestuurt.

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

Verwijderd schreef op 27 september 2002 @ 22:49:
Ik kan me trouwens niet voorstellen dat je het met een base64 encode mee kunt sturen... Het wachtwoord in een .htpasswd file is bijvoorbeeld 128 bits geencrypt, base64 is geen encrypt methode...
[...]
Toch is het wel zo... HTTP basic authentication verstuurt het wachtwoord base64-encoded... In principe dus plaintext. Vandaar dat het ook zo riskant is...

Localhost, sweet localhost


  • a casema user
  • Registratie: Januari 2000
  • Laatst online: 31-08 12:58
Verwijderd schreef op 29 september 2002 @ 12:45:
http://httpd.apache.org/docs/howto/auth.html
hier staat bar veel informatie over authorization op apache. Waarschijnlijk kun je hier wel iets vinden hoe de browser de headers meestuurt.
ik heb deze pagina al gezien.
Maar daar staat alleen info over hoe je bestanden kan beschermen op de apache server. Niet hoe je zelf voor die toegang kan zorgen.

Taaaa taa taa taaaa taa taa ta taaataaaaa.


  • kvdveer
  • Registratie: November 2000
  • Laatst online: 06-11-2025

kvdveer

Z.O.Z.

Het versturen van authorization naar de gebruiker is verkeerd, dat gaat namelijk andersom...

[spam]
Ik denk dat dit artikel wel ongeveer bescrhijft wat jij wilt.
http://www.webgoeroe.net/item/591
[/spam]

Localhost, sweet localhost


  • a casema user
  • Registratie: Januari 2000
  • Laatst online: 31-08 12:58
kvdveer schreef op 29 september 2002 @ 13:07:
Het versturen van authorization naar de gebruiker is verkeerd, dat gaat namelijk andersom...

[spam]
Ik denk dat dit artikel wel ongeveer bescrhijft wat jij wilt.
http://www.webgoeroe.net/item/591
[/spam]
het is een leuk artikel maar het is eigenlijk precies het omgekeerde van wat ik wil.

Ik wil voorkomen dat het popupscherm verschijnt voor het invullen van een username en password door een header mee te sturen met daarin de authorization.

Het artikel beschrijft juist hoe het moet om een popupscherm te toveren als je bv geen .htaccess hebt maar dat heb ik al.

Taaaa taa taa taaaa taa taa ta taaataaaaa.


Verwijderd

kvdveer schreef op 29 september 2002 @ 12:48:
[...]

Toch is het wel zo... HTTP basic authentication verstuurt het wachtwoord base64-encoded... In principe dus plaintext. Vandaar dat het ook zo riskant is...
hmz... .htaccess beveiliging is dus eigenlijk helemaal niet veilig... wat heeft het dan voor nut om het wachtwoord gecodeerd om de .htpasswd op te slaan?
Pagina: 1