CGI htpasswd.pl
// uh 3-mar-2003
// (c) 2003 by ueli(a)heuer.org
SORRY, but the english translation is missing. maybe I'll have some day some time to doit ...
dieser skript kann vielleicht User und passwörter verwalten.
es kann jedoch auch __unbeabsichtig__ so sein, dass dieser skript alle
ihre daten auf dem rechner löscht, ihnen kaffee kocht oder gleich die
wohnung aufräumt.
Sie können diese paar bytes selber verwenden wie sie wollen, ich
garantiere nur, dass du diesen code runterladen kannst. Alles
weitere liegt nicht in meienn Händen.
wenn du neue features, bugs, anregungen gefunden hast so kannst du mir
diese gerne an < ueli ( at ) heuer ( dot ) org > mailen.
htpasswd.pl ist ein cgi-skript, der es den usern erlaubt das eigene passwort
zu verwalten. Ist der User auch administrator, so kann er die Passwörter
und Gruppenzugehörigkeiten aller Siteuser verwalten.
das skript verwendet logischer dieselbe Databankstruktur wie das Module
(http://www.heuer.org/mod_auth_mysql/)
Installation:
htpasswd.pl -> globales cgi-bin verzeichnis
benötigte Module: CGI, CGI::Pretty, Crypt::Cracklib, DBI;
htaccess -> globales cgi-bin verzeichnis als .htaccess
star.gif, empty.gif, nodb.phpi: gehört beim default_virtual_server in das verzeichnis /htpasswd/
htpasswd.css: gehört beim default_virtual_server in das verzeichnis /htpasswd/styles/
z.B.
/home/default
cgi-bin/htpasswd.pl
cgi-bin/.htaccess ( inhalt von htaccess )
includes/htpasswd.inc ( sieh kommentar im htpasswd.pl)
htdocs/htpasswd/star.gif
htdocs/htpasswd/empty.gif
htdocs/htpasswd/nodb.php
htdocs/htpasswd/styles/htpasswd.css
in meiner konfiguration sieht das wie folgt aus (nur relevante teile angezeigt)
Listen [2001:8A8:30:10::2]:80
Listen 212.55.197.230:80
ScriptAlias /cgi-bin/ "/home/default/cgi-bin/"
Options ExecCGI
AllowOverride AuthConfig
Order allow,deny
Allow from all
NameVirtualHost *:80
ServerAdmin webmaster@maillink.ch
ServerName unknown.maillink.ch
DocumentRoot /home/default/htdocs
Einschränkungen:
- Es muss vorher ein administrator user in der Datenbank vorhanden sein.
- Ein Administrator kann sich nicht selber löschen
- Ein Administrator kann all passwörter ändern, auch die der anderen administratoren
- Der Masteruser ( ) kann nicht gelöscht werden.
ToDo / Wünsche
- Generische Datenbanktabellen
- mehr userinfo in der datenbank so à la passwd-datei
- logout möglichkeit (scheitert an den browsern)
- das ganze mit mod_perl eventuell kann da parsen der configdatei eintfallen.
- sprachunterstützung