Authentifizierung per PHP Formular

Bash, Shell, PHP, Python, Perl, CGI
centurio
Posts: 26
Joined: 2002-07-15 14:52
Location: Ingersheim

Authentifizierung per PHP Formular

Post by centurio »

Hi,

ich hab jetzt schon nach den verschiedensten Wörtern gesucht, jedoch nichts zu meinem Thema gefunden.

Mein Problem:

Ich möchte eine Anmeldung programmieren die nicht mit Hilfe einer Datenbank den korrekten User überprüft, sondern den eingegebenen User mit einem Linux Benutzer vergleicht. Also benutzer gibt seine Daten ein zum anmelden und System überprüft - Gibt es den Benutzer, wenn ja stimmt das Passwort.

Gibt es eine Möglichkeit so etwas zu realisieren.
Würde mich sehr über Hilfe freuen.

Gruß
Centurio
majortermi
Userprojekt
Userprojekt
Posts: 916
Joined: 2002-06-17 16:09

Re: Authentifizierung per PHP Formular

Post by majortermi »

Centurio wrote: Ich möchte eine Anmeldung programmieren die nicht mit Hilfe einer Datenbank den korrekten User überprüft, sondern den eingegebenen User mit einem Linux Benutzer vergleicht. Also benutzer gibt seine Daten ein zum anmelden und System überprüft - Gibt es den Benutzer, wenn ja stimmt das Passwort.
Dafür gibt es zwei Möglichkeiten:

a) Direkt über die /etc/passwd und /etc/shadow bzw. mit PAM prüfen.
:arrow: Sehr schlechte Idee, da dazu das Skript mit relativ hohen Privilegien laufen müsste.

b) Besser SASL benutzen, über den saslauthd kann man dann mit PAM unter Einbeziehung der /etc/shadow authentifizieren, ohne besondere Priviliegen zu benötigen.
Erst nachlesen, dann nachdenken, dann nachfragen... :)
Warum man sich an diese Reihenfolge halten sollte...
arty
Userprojekt
Userprojekt
Posts: 729
Joined: 2002-06-12 10:11

Re: Authentifizierung per PHP Formular

Post by arty »

Hi,

ich habe pam_ldap installiert und habe den Großteil meiner User in LDAP. Da kannste sehr simpel mit PHP sowas realisieren.

bye
arty
centurio
Posts: 26
Joined: 2002-07-15 14:52
Location: Ingersheim

Re: Authentifizierung per PHP Formular

Post by centurio »

Danke für die Tipps. Allerdings werde ich keinen LDAP Server aufbauen um mein Problem zu lösen.

Das mit SASL werde ich mir mal ansehen. Weiss darüber leider nichts. Mal sehen ob ich was finde.

Danke

Gruß
Centurio
centurio
Posts: 26
Joined: 2002-07-15 14:52
Location: Ingersheim

Re: Authentifizierung per PHP Formular

Post by centurio »

Ist SASL da wirklich das richtige? Ich finde im Internet nur Hinweise auf SASL in Verbindung mit IMAP Servern oder verschiedenen MTA's jedoch nicht mit einem PHP Script um einen Login durchzuführen.

Wie soll das denn funktionieren? Welchen Daemon nehme ich? SASL an sich ist ja nur eine Layer und kein Programm.

Ich bräuchte noch etwas Starthilfe.

Gruß
Jörg
kahler
Posts: 130
Joined: 2003-04-18 17:42
Location: /root

Re: Authentifizierung per PHP Formular

Post by kahler »

Centurio wrote:Welchen Daemon nehme ich?
Wie wärs mit dem saslauthd??

Hier noch eine Seite, die ich durch einfaches suchen auf Google gefunden habe und die dir vielleicht den Einstieg ins SASL programmieren erleichtert: http://play.gw.com:2784/common/doc/pkg/ ... mming.html
centurio
Posts: 26
Joined: 2002-07-15 14:52
Location: Ingersheim

Re: Authentifizierung per PHP Formular

Post by centurio »

Ok, ich scheine diesem Thema wohl nicht gewachsen zu sein, da ich immer noch nicht weiter bin.

Gibt es vielleicht ein HOWTO für dieses Thema für meine Verwendungsart.

Mein System ist ein SuSe 7.2

Danke für den Link aber wirklich weitergeholfen hat er nicht.

Wie läuft das ab mit SASL ? Wie spreche ich mit meinem Script den Deamon an??

Mir ist das irgenwie nicht ganz klar.

Danke für die Bemühungen.

Gruß
Jörg
kahler
Posts: 130
Joined: 2003-04-18 17:42
Location: /root

Re: Authentifizierung per PHP Formular

Post by kahler »

Den Daemon sprichts du über die in SASL beinhalteten Bibliotheken an, die allerdings alle in C sind...

...Es gibt also keine triviale Lösung für das Problem. Aber es bleiben dir 3 Möglichkeiten:

1. Du bringst PHP bei, mit SASL umzugehen (vermutlich ein endloses und schwieriges unterfangen)

2. Du schreibst dir PHP Libs, die SASL ansprechen und mit den Ausgaben von SASL umgehen können

3. Du schreibst dir einen weiteren Daemon, der die Anfragen deines PHP Scripts entgegen nimmt, diese an SASL weiterleitet und dann die Ausgabe für dein PHP Script vorbereitet (am besten, du machst die Passwort Ã?berprüfung auch gleich da mit rein und das C Programm liefert dann nur noch Ok, oder nicht Ok zurück)

Ich persönlich würde die 3. Möglichkeit bevorzugen, aber das bleibt natürlich jedem selbst überlassen.
arty
Userprojekt
Userprojekt
Posts: 729
Joined: 2002-06-12 10:11

Re: Authentifizierung per PHP Formular

Post by arty »

Hiho,

wenn ich mir die Beiträge hier so ansehe, ist es bedeutend einfacher, nen LDAP-Server und pam_ldap aufzusetzen und das per PHP anzusprechen.

bye
arty
kahler
Posts: 130
Joined: 2003-04-18 17:42
Location: /root

Re: Authentifizierung per PHP Formular

Post by kahler »

arty wrote:... ist es bedeutend einfacher, nen LDAP-Server und pam_ldap aufzusetzen und das per PHP anzusprechen.
Korrekt und so wird es in den HowTos, die man über Google findet auch gemacht :)
Aber wenn er nach SASL fragt, dann bekommt er auch ne SASL Antwort. Aber vielleicht gibt es ja auch schon fertige SASL-Klassen für PHP, die ich einfach nicht kenne.
centurio
Posts: 26
Joined: 2002-07-15 14:52
Location: Ingersheim

Re: Authentifizierung per PHP Formular

Post by centurio »

Ok ich gebe mich geschlagen. Leider gibt es auch meines wissens nach keine SASL-Klassen für PHP. Ich werde wohl doch nen LDAP Server aufsetzen müssen um zu meinem Ziel zu kommen.

Danke für eure Hilfe. Hab wieder einiges dazugelernt ;-)

Gruß
Centurio
centurio
Posts: 26
Joined: 2002-07-15 14:52
Location: Ingersheim

Re: Authentifizierung per PHP Formular

Post by centurio »

Hat jemand vielleicht ein HOWTO für die Einrichtung von pam_ldap in Verbindung mit dem OpenLDAP Server.

Hab in Google nix vernünftiges gefunden
arty
Userprojekt
Userprojekt
Posts: 729
Joined: 2002-06-12 10:11

Re: Authentifizierung per PHP Formular

Post by arty »

Hi,

ich hab sowas verfasst, bin aber noch nicht ganz fertig, es erscheint demnächst auf debianhowto.de

bye
arty