"Single Sign On" mittels Clientzertifikat

Alles, was den Apache betrifft, kann hier besprochen werden.

"Single Sign On" mittels Clientzertifikat

Postby festplatten_raser » 27. August 2008 09:47

Hallo an alle,

vielleicht habt Ihr eine Lösung. Ich möchte mittels validierung eines Clientzertifikates eine Art Single Sign On in unserer PHP/Mysql Anwendung realisieren. Das Serverzertifikat funktioniert und die Clientzertifkate auch. Aus dem Clientzertifikat möchte ich die E-Mail Adresse und eine User Id auslesen, die bereits in unserer Mysql Datenbank vorhanden sind. Nach Abgleich soll der User dann direkt eingeloggt sein in der Anwendung.

Hat jemand eine Idee, wie ich das realisiere ?

gruss

Peter
festplatten_raser
 
Posts: 3
Joined: 03. June 2008 12:08

Postby Nobbie » 27. August 2008 10:10

Ist das die aktuelle Praktikumsarbeit, oder die Übungsaufgabe in der PHP Vorlesung?

Wo ist denn das Problem? Du hast doch schon alle Werte - User, Client-Email - jetzt mußt Du nur noch die Daten mit denen aus MySQL vergleichen und wenn es sie gibt, ist der User "eingeloggt". Letzteres realisiert man üblicherweise mit Sessionvariablen (oder Cookies, aber Sessions sind komfortabler).
Nobbie
 
Posts: 8768
Joined: 09. March 2008 13:04

Postby festplatten_raser » 27. August 2008 10:22

vom ablauf her ist es richtig was du sagst. Wie lese ich denn die Clientzertifkatdaten mittels PHP aus bzw. wie bringe ich dem apache bei, dass er bei Überprüfung der Zertifikate nicht nach eine htpasswd fragt, sondern dies direkt in der mysql datenbank tut ?
festplatten_raser
 
Posts: 3
Joined: 03. June 2008 12:08

Postby Wiedmann » 27. August 2008 10:33

Wie lese ich denn die Clientzertifkatdaten mittels PHP aus

Nach einer erfolgreichen Anmeldung am Apache mittels Clientcert, stehen die alle möglichen SSL_CLIENT_XXX Variablen zur Verfügung (siehe phpinfo()).

wie bringe ich dem apache bei, dass er bei Überprüfung der Zertifikate nicht nach eine htpasswd fragt, sondern dies direkt in der mysql datenbank tut ?

Anmeldung/überprüfung von Clientcertifikaten am Apache hat nichts mit mod_auth zu tun (Ausnahmen evtl. FakeBasicAuth). Das hast du dann zusätzlich Eingerichtet?
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby Nobbie » 27. August 2008 10:34

>Wie lese ich denn die Clientzertifkatdaten mittels PHP

Keine Ahnung - Du hast doch geschrieben, die stehen zur Verfügung. Wie wird das Zertifikat übertragen?

>bzw. wie bringe ich dem apache bei, dass er bei Überprüfung der Zertifikate nicht nach eine htpasswd fragt, sondern dies direkt in der mysql datenbank tut

Gar nicht - wie soll Apache denn das Clientzertifikat auswerten? Du mußt das mit PHP selbst programmieren - und in Sessions abspeichern (hatte ich eigentlich schon geschrieben).
Nobbie
 
Posts: 8768
Joined: 09. March 2008 13:04


Return to Apache

Who is online

Users browsing this forum: No registered users and 2 guests