Login über 2 verschiedene Server

Miraculixx

Erfahrenes Mitglied
Hi!
Ich habe wieder mal ein kleines Problemchen, und zwar haben ich und ein Kollege jeweils aufm eigenen Server ein paar php-Seiten laufen.
Wir möchten nun einen Login realisieren, um nach dem Login erst die seiten benutzen zu können. Allerdings möchten wir nur EINEN Login, und dann soll der Zugriff auf beide Server gegeben sein.

Unsere erste Idee wäre gewesen, auf einem der Server einen Login zu programmieren, und der setzt dann ein cookie, das von beiden verwendet wird.
Bis wir erfahren haben, dass cookies nur vom selben server wieder gelesen werden können :(

Hat von euch noch jemand eine Idee, wie wir das ganze realisieren könnten?
Oder irgendwelche Tipps? Ich wäre euch dankbar! :)
 
Ich glaube mit Sessions habt ihr das gleiche Problem, da jeder Server die Session-Informationen lokal speichert... mhhh,

wenn euer Webspace SQL-Anfragen von einer anderen Seite akzeptiert, könntet ihr das über ein "aufgemotztes" Login realisieren.

Statt die Login-Daten nur an den eigenen Server zu schicken, werden diese auch an den 2. übertragen, der kann dann den Benutzer mit seiner IP in der DB als "eingeloggt" markieren..

Sicher nicht optimal, wenn sich IP ändert, ein Timeout müsste dazu und anhand der IP Zugriffsrechte zu geben würd ich auch nicht bei sensiblen Daten einsetzen... aber funktionieren könnte es ;)
 
hi,

also du könnstest username und passwort immer mitübergeben.

Beispiel:

dein Kumpel loggt sich ein und geht dann auf deine Seite.

Dann übergibt er per GET also in der URL username und verschlüsseltes Passwort.

und du überprüfst des dann.

Dein Kumpel macht des ganze auch wenn du auf seine gehst.

Hoffe geholfen zu haben.

MfG
paddz
 
Herzlichen dank, das sind ja schon mal zwei lösungsansätze.

Sehr vertrauenswürdig sind die Daten nicht (es geht um ein online-spiel) von daher wäre die lösung mit der datenbank wahrscheinlich noch die einfachere... müssen wir mal testen ob wir die rechte dazu haben :)
 
aber bedenke, dass bei einem Onlinespiel die Spieler immer enormen Ideereichtum hervorbringen um das System auszutricksen ;)
 
Jo das ist richtig
Aber da habe ich mich wohl etwas falsch ausgedrückt.
Ich spiele mit ca. 20 Leuten in einer Gruppe (sog. Allianz) und ich und ein kollege von mir haben eben ein paar kleine Tools geschrieben, für Statistiken etc.
Und das ganze wollen wir eben jetzt mit einem Login schützen, dass nur unsere Allianz-Mitglieder zugriff darauf haben und nicht alle Spieler des gesamten Onlinespiels.

Von daher: Allianz-intern glaube ich kaum dass es da zu Problemen kommen wird, und sonst kennt ja den Link eigentlich niemand, es soll halt einfach nur nicht öffentlich zugänglich sein.

Aber wir haben noch einen anderen Lösungsansatz:
Auf Server A zb. befindet sich die login.php. Wenn sich jemand anmeldet, dann wird der login auf Server A in die session gespeichert und eine andere php-Datei vom server B wird aufgerufen, die dann das Cookie für Server B auf dem Client speichert.
Das müsste doch so funktionieren, oder etwa nicht?
 
Hi


ich hatte mal nen Link zu nem php script das post imitieren kann bzw ich glaub ich habe ihn eh in dem Forum gesehen du könntest wenn sich jemand bei dir einloggt die login Daten dann per POST dann auch an den anderen Server schicken und der könnte dann auch ne Session setzen und dann per header location den user zurück zu deiner Seite schicken.

wenn ich denn link gefunden habe dann editiere ich.

oder du machst gleich alles mit get.

Du lässt den user einloggen dann setzt du Session und das ganze Zeug und dann machste ein header("Location : ........?benutzername =md5-name&kennwort=md5-kennwort wenn der Login auf deinem Server erfolgreich war.

wobei ich denn Benuternamen als md5 und das Kennwort auch mit md5 übergeben würde. Natürlich müssten dann neben dem normalen Namen auch der md5 benutzername in der DB sein und md5 kewnnwort.

und dann hat auf ein spezielle Script auf dem anderen Server die die Dingevergleicht wenn ja die 2 Session setzen bzw cookie und dann wieder mit header("Locat......") zurück zu deinem Server wobei ich beim zurückschicken ich auch wieder eine Variable setzenwürde mit true or false ob der Login erfolgreich war.

achja zu eurem 2 Lösungsansatz ein Server kann auch Cookies für einen Anderen server setzen (glaub ich mich zu errinern) er kann dann halt nicht mehr darauf zugreifen nur leider sind cookies nicht gerade sicher da sie ja jeder setzen kann des halb sollte aus meiner sicht in einem Cookie nie mehr wie die Session id stehen denn darauf dann der User nicht zugreifen und dem Server B würde die Session id den Servers A nichts Bringen weil ihm die Session fehlt.

mfg mike4004
 
Zuletzt bearbeitet:
Herzlichen Dank mike4004 für deinen Post!
Da sind auf jeden fall genügend Ideen und Gedanken dabei, dass wir das irgendwie realisieren können.
Wie wichtig uns die Sicherheit ist müssen wir uns erst noch überlegen... aber so funktioniert das sicher ganz gut! THX :)
 
Zurück