#1
| ||||
| ||||
Idee gesucht: Ein Login - Mehrere DomainsMoin! Aufgabe: Ein Login, mehrere Domains Beispiel: Google Account In einem aktuellen Projekt (Rails) ist es meine Aufgabe die Benutzerverwaltung ueber mehrere Domains zu verteilen. Das bedeutet, dass es eine zentrale Benutzerverwaltung existiert und mehrere Website auf diese zugreifen. Nach dem Login des Nutzers soll dieser auf jeder Website angemeldet sein. Als Werkzeug steht severseitige Programmierung, Javascript, Ajax, Iframes, Datenbankzugriff und weitere Techniken, die dem Ziel dienen. Problem: Im Moment ist das Problem vor allem, dass die Daten nicht auf jeder Website zur Verfuegung stehen. Es ist absolut kein Problem einen einzelnen Login auf einer externen Seite durchzufuehren, aber die Uebertragung auf andere Domains ist komplex. Also Jungs, wer hat Ideen? |
#2
| ||||
| ||||
so etwas gibt es: mach Dich mal über folgendes schlau: OpenID: an actually distributed identity system claimID.com - Manage your online identity ClaimID - Single Sign On Login Systeme im Internet |
#3
| ||||
| ||||
Eine Loesung wie openID ist problemlos umsetzbar, aber es weiterhin nicht moeglich den erfolgreichen Login auf alle Websites zu uebertragen. Aus diesem Grund ist openID ebenfalls keine Loesung. Das Ziel ist es ein Login fuer alle Websites zu entwickeln. |
#4
| |||
| |||
Zitat:
Tobi |
#5
| ||||
| ||||
Ich würde sagen, da hilft es nur eine zentrale Seite (login.domain.tld oder so) einzurichten, auf die beim ersten Besuch der jeweiligen Domain weitergeleitet wird und die bei Vorhandensein eines Cookies den auch für die entsprechende Domain setzt. Sollte er nicht gesetzt sein, kommt es natürlich zu kaum einer Veränderung (ein Cookie wär evtl. noch nötig um anzuzeigen, dass der Cookie-Check schon erfolgte), in beiden Fällen wird der User dann zurück zur Domain umgeleitet. |
#6
| ||||
| ||||
In meinem Fall ist das Ziel, dass saemtliche Nutzer sofort unter allen Domains eingeloggt sind. Jedes Cookie ist an eine Domain gebunden und somit stehe ich vor Wahl: 1. Cookies: Fuer jede Domain ein Cookie zu setzen (afaik unmoeglich) 2. Iframes: Zentralisierter Login in einem Iframe. Das Cookie wird fuer die Domain des Iframes gesetzt und die Website muss die Informationen aus dem Iframe laden. 3. AJAX: Eine Moeglichkeit teste ich im Laufe des Abends heute. Gru-ss |
#7
| |||
| |||
Also ich halte deine Gedanken für recht kritisch. Was willst du denn als Cookie speichern? Die BenutzerID? Dann ist es für jeden Hacker problemlos möglich, sich bei dir im beliebigen System als Benutzer 5 zu registrieren Das Passwort des Benutzers? Wie willst du sicherstellen, dass das iFrame nur von erlaubten Server eingebunden wird und damit nicht unerlaubt das Passwort eines Benutzers ausgelesen wird? Zumal Benutzerpasswörter in Cookies sowieso fraglich sind. Selbst wenn du einen eindeutigen String verwendest, ist die Gefahr groß, dass dieser String geklaut wird. Du müsstest also - um den Sicherheitswillen - für jedes Angebot einen individuellen String erzeugen, der den Benutzer und das zuvor registrierte Projekt eindeutig kennzeichnet. Die iFrame-Problematik zeigt dir aber, dass damit jedes System vorgaukelbar ist und deine Idee angreifbar ist. Wenn, dann funktioniert das nur über eine zentrale Login-Seite (eigenständig), welche per Link eine Anmeldung an ein zweites System weiterleitet. Die Daten können dann verschlüsselt übetragen werden. Wurstbrot |
#8
| ||||
| ||||
Zitat:
Ein permanenter Login erfordert jedoch die Speicherung der user.id sowie des user.password in verschluesselter Form. Beim Aufruf der Website erfolgt serverseitig ein Abgleich des Cookies mit der Datenbank. Wenn dieser erfolgreich ist, so wird eine Session eroeffnet. Wenn dieser mislingt, wird das Cookie geloescht. Das Problem der permanten Speicherung eines Logins existiert in jeder Anwendung. Das vBulletin erlaubt es jedem Nutzer meines Computers in meinem Namen zu handeln. Amazon im Gegenzug verlangt fuer viele Funktionen die erneute Eingabe des Passworts. Zitat:
Leider speichern in der Realitaet viele Websites die Passwoerter der Nutzer im Klartext und bietet zusaetzlich noch Funktionen aus der Datenbank auszulesen... Zitat:
Um es zu betonen: Das Ziel ist, dass ein eingeloggter Nutzer unter allen Domains als eingeloggt erscheint. Die Loginfunktion zu zentralisieren ist ist in drei Sekunden gemacht mit <form action="http://domain.tld/user/login" .... Gruss |
#9
| ||||
| ||||
Bei vb.org habe ich dazu gerade folgendes entdeckt. CES Cookie Cutter - Share Cookies Between Domains CES Cookie Cutter - Share Cookies Between Domains - vBulletin.org Forum |
#10
| ||||
| ||||
Hi, kann sich den mal jemand, der eine vB-Lizenz besitzt, herunterladen und die Technik hier dokumentieren? Würde mich sehr interessieren, aber ohne vB-Lizenz ist das schwer daran zu kommen MaMo __________________ Forensoftware mit integriertem CMS: Viscacha 0.8! |
#11
| |||
| |||
Nach einer Lösung für diese Problem suche ich ebenfalls, die vBulletin Seite hab ich auch schon gefunden, allerdings wie mein Vorredner schon sagt bin ich ebenfalls nicht im Besitz einer vBulletin Lizenz sodass ich mir den Source nicht näher anschauen kann Wäre schön wenn jemand mir dieses Modul zukommen lassen könnte oder halt selbst durchschaut und mir erklären kann wie das geht. Cookies für andere tlds zu setzen funktioniert mit php ja so nicht. Allerdings habe ich irgendwo gelesen das man die php.ini so anpassen kann das es ggf doch möglich wäre. Leider hab ich den Link davon verbummelt Also wenn jemand eine Lösung für das Problem gefunden hat wäre ich diesem sehr zu dank verpflichtet wenn er mich daran teilhaben lassen könnte. Ich hatte jetzt noch die Idee das man von domain1.de einen cookie für domain1.de erstellen lässt und dann per php-header auf domain2.de weiterleitet welche dann einen cookie für domain2.de erstellt und diese wiederum weiterleitet auf domain3.de und jeweils per GET der Sessioncode übergeben wird. Das wäre zwar nicht das Gelbe vom Ei da man wenn ein neues Projekt hinzugefügt wird erst schauen müsste welches das zuletzt hinzugefügt Projekt wäre um dieses dann wieder zu erweitern aber vllt geht das ja so. Bei Google und bspweise primusportal funktioniert das ja auch irgendwie nur leider find ich beim besten Willen kaum bis keine Informationen darüber |
#12
| ||||
| ||||
Wenn gar nichts klappt, könntest du ja auch eine kleine Desktop Software schreiben, wo er sich einloggen kann und von der App dann direkt zB die Seiten / Foren aufrufen kann. beim einloggen überprüft die Software den Login und erstellt dann gleichzeitig die ganzen Cookies. Sowas dann zB auch als Widget für Vista User würde sicher so manchen User sicherlich freuen, könnte ich mir vorstellen. |
Stichworte |
- |
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Eine Idee für fis / fik.de | Björn | Community Management, Administration und Moderation | 5 | 12.08.2007 12:57 |
Backuplösung für mehrere Datenbanken gesucht | julia2000 | Webspace, Webserver, Domains | 4 | 27.03.2006 18:13 |
PHP: Aus str mehrere Arrays bauen | TRS | Programmierung und Datenbanken | 2 | 26.10.2004 11:42 |
Projekt Idee: wwE | Mecca | Community Management, Administration und Moderation | 5 | 26.05.2004 19:38 |