1. Weiterleitung zu NetzLiving.de
  2. Forum
    1. Unerledigte Themen
  3. zum neuen Forum
  • Anmelden
  • Suche
Dieses Thema
  • Alles
  • Dieses Thema
  • Dieses Forum
  • Seiten
  • Forum
  • Erweiterte Suche
  1. Informatik Forum
  2. Webmaster & Internet
  3. Entwicklung

.htaccess + authentifizierung über db

  • maciek
  • 7. August 2004 um 13:13
  • Unerledigt
Hallo zusammen,

das Informatik-Forum geht in den Archivmodus, genaue Informationen kann man der entsprechenden Ankündigung entnehmen. Als Dankeschön für die Treue bekommt man von uns einen Gutscheincode (informatikforum30) womit man bei netzliving.de 30% auf das erste Jahr sparen kann. (Genaue Infos sind ebenfalls in der Ankündigung)

Vielen Dank für die Treue und das Verständnis!
  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 7. August 2004 um 13:13
    • #1

    Folgende Tatsachen: Ich möchte ein Verzeichnis mit .htaccess vor unerlaubten zugriffen schützen. Auf der anderen Seite habe ich ein Usermanagment über ein DB und PHP.

    Frageee: Wie kann ich die zwei Verbinden? D.h. wie kann ich es anstellen, daß wenn sich ein User über mein PHP-Skript authentifiziert hat, er gleichzeitig auch von .htaccess durchgelassen wird ohne ein zweites mal ein Passwort eingeben zu müssen?

    Eigentlich möchte ich ja auch nicht, daß er das Paßwort für .htaccess kennt, damit er nicht direkt (ohne das PHP-Skript) auf das Verzeichnis zugreift. Die Idee, die ich hätte wäre, daß wenn er sich eingeloggt hat, dann das PHP-Skript die (universellen - für alle user gleichen Daten) an .htaccess schickt (?) ... geht das irgendwie so?

    Thanx 4 help.

  • p2k
    Punkte
    375
    Beiträge
    53
    • 9. August 2004 um 17:28
    • #2

    Was ich laufen hab ist folgendes:

    http://modauthmysql.sourceforge.net/

    Rein nur mit php müsstest halt basteln.

    Philipp

  • rck
    Punkte
    2.342
    Beiträge
    437
    • 9. August 2004 um 19:52
    • #3
    Zitat von maciek

    Eigentlich möchte ich ja auch nicht, daß er das Paßwort für .htaccess kennt, damit er nicht direkt (ohne das PHP-Skript) auf das Verzeichnis zugreift. Die Idee, die ich hätte wäre, daß wenn er sich eingeloggt hat, dann das PHP-Skript die (universellen - für alle user gleichen Daten) an .htaccess schickt (?) ... geht das irgendwie so?

    Geht's Dir darum, dass der Benutzer bestimmte PHP-Seiten nur benutzen darf, wenn er sich vorher eingeloggt hat? Schau Dir PEAR::Auth an, das ist bei mir im Einsatz und funktioniert ausgezeichnet. // Rene

  • Guardian
    Punkte
    686
    Beiträge
    130
    • 9. August 2004 um 20:23
    • #4

    http://www.krizleebear.de/phpaccess/dyna…ex.php?pageID=1


    dort findest ein script welches dir via web das erlaubt, kann man auch sehr fein mit db verknüpfen

  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 10. August 2004 um 00:34
    • #5

    zunächst mal danke für die Tipps. Allerdings ...

    Das ganze soll auf einem durchschnittlichen Server laufen sollen (z.B. Inode) oder sonst wo. Am besten unter PHP 4.0 oder 4.1 Zusatzmodule kann ich zwar bei mir installieren, aber bis die Fritzen von irgendeinem Provider das gecheckt haben ... das ist immer ein Problem. Daher würde ich gern die Finger von irgendwelchen Zusatzmodulen lassen.

    Der Ansatz mit dem selber schreiben des .htaccess bzw. .htpasswd ist ja schon mal hilfreich. An so was hab ich auch schon gedacht. Allerdings ... das Skript funkt jetzt nicht wirklich und ich hab jetzt keine Zeit mehr, mich heute noch damit zu spielen.

    Meine Kernfrage ist allerdings noch nicht beantwortet: Wenn ich mein eigenes UserManagement habe, mich über dieses UserManagement authentifziert habe, dann auf ein mit .htaccess geschütztes Verzeichnis zugreifen möchte, zu dem ich mit dem gleichen usernamen und password Zugriff habe, wie zum Usermanagement ... gibt es dann eine Möglichkeit meine Daten (username + password) an den Server zu schicken, sodaß ich diese nicht noch 1x eintippen muß?

  • rck
    Punkte
    2.342
    Beiträge
    437
    • 10. August 2004 um 12:26
    • #6
    Zitat von maciek

    Das ganze soll auf einem durchschnittlichen Server laufen sollen (z.B. Inode) oder sonst wo. Am besten unter PHP 4.0 oder 4.1 Zusatzmodule kann ich zwar bei mir installieren, aber bis die Fritzen von irgendeinem Provider das gecheckt haben ...

    PEAR ist eine Sourcecode-Bibliothek, kein Modul! Du spielt also einfach zusätzlich zu Deinen .php-Dateien ein paar von PEAR ein -- fertig.

    PEAR::Auth ist ein (mächtigerer) Ersatz für .htaccess, keine Ergänzung. Wofür genau brauchst Du .htaccess, außer für die Benutzerauthentifizierung?

  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 10. August 2004 um 15:11
    • #7
    Zitat von rck

    PEAR ist eine Sourcecode-Bibliothek, kein Modul! Du spielt also einfach zusätzlich zu Deinen .php-Dateien ein paar von PEAR ein -- fertig.


    ok, mein Fehler. Allerdings brauch ich eigentlich nur etwas ganz einfaches (es sollte zumindest einfach sein) und mich da jetzt mit der ganzen Bibliothek zu spielen erscheint mir da ein bissi wie mit einer Kanone auf Spatzen zu schießen.

    Zitat von rck


    PEAR::Auth ist ein (mächtigerer) Ersatz für .htaccess, keine Ergänzung. Wofür genau brauchst Du .htaccess, außer für die Benutzerauthentifizierung?


    ich hab mir jetzt einen user franzi mit dem passwort franzi erstellt. Mit dem funktioniert das .htaccess + .htpasswd auf meinem Order "xyz".

    Die Daten eines LogIns am Server - hab ich jetzt rausgefunden - kann man mit $_SERVER['PHP_AUTH_USER'] und $_SERVER['PHP_AUTH_PW'] rauslesen. D.h. wenn ich mich über das Server-LogIn mit "franzi" + "franzi" anmelde, sehe ich über die zwei Servervariablen diese Daten.

    Ich kann auch die zwei Variablen setzen. Allerdings wenn ich mich zuerst über mein Skript einlogge, die Variablen setze, dann sehe zwar daß sich die $_SERVER-Variablen geändert haben, allerdings verlangt der Browser noch immer eine Authentifikation wenn ich auf den Ordner "xyz" zugreifen möchte. Weiß jemand woran das liegen könnte?

  • Wings-of-Glory
    Punkte
    8.305
    Beiträge
    1.573
    • 10. August 2004 um 15:59
    • #8

    ich weiß nicht, ob du das nicht eh weißt, aber...
    das password und das login kannst du über eine url weitergeben: z.b. http://franzilogin:franzipassw@www.irgendwas.bla

  • rck
    Punkte
    2.342
    Beiträge
    437
    • 10. August 2004 um 16:13
    • #9
    Zitat von maciek

    ok, mein Fehler. Allerdings brauch ich eigentlich nur etwas ganz einfaches (es sollte zumindest einfach sein) und mich da jetzt mit der ganzen Bibliothek zu spielen erscheint mir da ein bissi wie mit einer Kanone auf Spatzen zu schießen.

    Mag sein. PEAR bietet jedenfalls noch einen Haufen weiterer Möglichkeiten, zB für's Formulardesign (Felder definieren inklusive automatischem Client-seitigem Check, zB auf gültige Länge, ggf. mit Fallback auf Serverseitigen check -- PEAR::HTML_QuickForm), oder für die einheitliche Datenbankanbindung (PEAR::DB), etc., etc.

    Ich hab mir für mein Projekt viele, viele Authentifizierungsmöglichkeiten angesehen. PEAR::Auth schien mir am praktikabelsten und hat gleich funktioniert.

    Schau mal auf http://www.circle.ch/blog/index.php?p=566&c=1, das dortige Beispiel hab ich verwendet. Wenn Du die Kommentare weglässt, hast Du mit gerade mal 10 Zeilen PHP-Code (und selbst die kannst Du noch zusammenkürzen) eine funktionierende Authentifizierung.

    Was Du brauchst, ist eine Tabelle, in der die Authentifizierungs-Informationen drinnenstehen. Eine Beispielstruktur ist am Anfang des genannten Beispiels angeführt.

  • maciek
    Punkte
    2.805
    Beiträge
    434
    • 10. August 2004 um 16:44
    • #10
    Zitat von Wings-of-Glory

    ich weiß nicht, ob du das nicht eh weißt, aber...
    das password und das login kannst du über eine url weitergeben: z.b. http://franzilogin:franzipassw@www.irgendwas.bla


    das ist so in etwas das wonach ich gesucht hab. Allerdings ... der Nachteil ist, daß dann auch der username und das password in der History sichtbar sind. :( Oder kann man das irgendwie vermeiden?

    @Pear::Auth: Die Authentifierung an sich funkt bei mir schon. Aber danke für den Tipp. Ich werd mir das eine oder andere sicher anschauen. Vielleicht haben die es ja schlauer gelöst und ich kann was lernen. ;)

  • Guardian
    Punkte
    686
    Beiträge
    130
    • 10. August 2004 um 17:31
    • #11

    der tipp von mir ist ein script, welches die standard funktionalität ausnutzt und dir die möglichkeit gibt berechtigungen zu erzeugen, verwalten usw

  • Maximilian Rupp 27. Dezember 2024 um 12:06

    Hat das Thema aus dem Forum Programmieren nach Entwicklung verschoben.

  1. Datenschutzerklärung
  2. Impressum