Teilen Sitzung zwischen zwei Websites

8

Hallo Danke im Voraus ...
Ich arbeite an einem Projekt, ich brauche etwas Klärung, um Daten zwischen zwei Standorten in einer hoch sicheren Weise zu teilen. Momentan verwende ich Form Post, um Daten zu teilen. Aber ich denke darüber nach, ob es eine Option gibt, Site-1-Sitzungsdaten von Site-2 zu bekommen, weil ich denke, dass die Verwendung einer Sitzung sicherer ist. Ich weiß nicht, wie man Sitzungen zwischen zwei Seiten benutzt, aber ich hoffe, dass jemand hier weiß.

So: Site 1-Codierung

%Vor%

Site 2-Code in do.php

%Vor%

Oder gibt es eine Möglichkeit, die sichere gemeinsame Nutzung von Daten zwischen zwei anderen Websites als dem Form-Post zu machen, bitte sagen Sie es mir.
Vielen Dank Deines, Kaartikeyan R

Lösung gefunden

Ich habe die Kundennummer und den Betrag über CURL an die zweite Website gesendet, in der dafür einen Eintrag in der Tabelle erstellt und eine verschlüsselte ID mit der Eintrags-ID erzeugt und die verschlüsselte ID zurückgegeben.

Auf der ersten Website erhalte ich die verschlüsselte ID und verwende sie für die URL-Weiterleitung zur zweiten Website.

Auf der zweiten Website mit der verschlüsselten ID erhalte ich die Kundennummer und den Betrag.

    
rkaartikeyan 13.07.2011, 12:38
quelle

2 Antworten

17

Urk. Zunächst einmal, niemals, immer dies tun:

%Vor%

Dies führt zu einer Sicherheitslücke, die wir als "Sitzungsfixierung" bezeichnen (mehr dazu: Ссылка ).

Es sieht so aus, als ob Sie ziemlich stark auf Sicherheit sind. Wenn Sie Daten von Standort 1 zu Standort 2 freigeben müssen, sollten Sie dies über eine einzelne Verbrauchsbrücke tun:

1). Klicken Sie auf einen Link auf Site 1 zu einer Handler-Datei, nennen wir sie redir.php.

2). Redir.php überprüft zuerst die vorhandenen Sitzungsdaten.

3). Redir.php schreibt relevante Informationen in eine DB-Zeile, zusammen mit einer Art Bezeichner (zB MD5-Hash der Benutzer-ID + '_' + aktueller Zeit) plus einem 'consumed'-Flag, das auf false gesetzt ist.

4). Redir.php führt eine 301-Umleitung zu Site 2 zusammen mit dem Bezeichner durch.

5). Standort 2 liest die relevante Zeile aus dem DB.

6). Wenn die Daten gut sind und noch nicht "konsumiert" wurden, geben Sie einen Erfolg zurück und markieren Sie die Daten als verbraucht.

7). Wenn die Daten verbraucht sind, werfen Sie eine Art von Fehler.

Es gibt komplexere Möglichkeiten, dies zu tun, aber ich denke, damit wird das gehandhabt, was Sie versuchen.

    
John Green 13.07.2011, 12:54
quelle
1

Sie könnten ein gemeinsames Session-Backend für beide Seiten verwenden, z. Speichern Sie die Sitzung in einer Datenbank

Um das eingebaute Datei-Backend zu ersetzen, können Sie die Funktion session_set_save_handler

    
Gryphius 13.07.2011 12:54
quelle

Tags und Links