Frage

Szenario:

Die Aufgabe, die ich bei der Hand haben, ist eine Single-Signon-Lösung zwischen den verschiedenen Organisationen / Websites zu ermöglichen. Ich beginne als ein authentifizierter Benutzer auf einer Unternehmens-Website, spezifische Informationen in ein XML-Dokument konvertieren, verschlüsseln Sie das Dokument mit Triple-DEM, und das über als Post-Variable an die zweiten Organisationen Seite anmelden.

Frage:

Nachdem ich meine XML-Daten verpackt haben, wie programmatisch ich einen Beitrag an die zweite Website durchführen und haben den Browser auf die zweite Seite weitergeleitet des Benutzers als auch.

Dies sollte verhalten sich eine Form wie mit wie:

action = "http://www.www.com/posthere" method = "post"

... und ein verstecktes Textfeld mit wie:

input type = "hidden" value = "Verschlüsselte xml"

Dieses geschrieben wird in asp.net 2.0 Webformulare.

-

Edit: Nic fragt, warum das HTML-Formular ich oben beschreiben wird nicht funktionieren. Antwort: Ich habe keine Kontrolle über jeden Ort; Ich baue den „mittleren Mann“, der all dies macht passieren. Seite 1 wird ein Benutzer auf die Seite weiterzuleiten, die ich mache, ich die XML zu bauen, und darauf, es auf Seite 2. Seite 1 wird dann nicht der Benutzer über meine Seite wissen will, sollte die Umleitung transparent sein.

Der Prozess, den ich oben beschrieben habe, ist, was beide Parteien (Standort A und Standort B) Mandat.

War es hilfreich?

Lösung

Senden Sie ein Dokument zurück, das die von mit versteckten Eingang enthält und verfügen über einen onload-Handler, die Beiträge der Form sofort auf die andere Seite. jQuerys document.ready Mit () löst die Frage, ob das DOM geladen wird, bevor die Post auf, obwohl es auch andere Möglichkeiten, dies ohne Jquery zu tun. Sie könnten einige kleine Meldung auf dem Bildschirm, um den Effekt zu erzielen möchten, dass der Benutzer in Kürze umgeleitet wird und einen Link, der auch die Post tut

...headers left out...

<script type='text/javascript'>

$(document).ready( function() {
   $('form:first').submit();
 });
</script>

<body>
   <form action='othersiteurl' method='POST'>
       <input type='hidden' value='your-encrypted-xml" />
   </form>
</body>

Andere Tipps

Du diese zu denken Prozess orientiert, wäre es Ihnen einen Monat Sonntag nehmen, um zu versuchen und alle Fehler zu trainieren und bewegliche Teile mit dem, was Sie vorschlagen.

Sie tun bereits einen Beitrag zu einem anderen Server, so dass Sie wirklich etwas brauchen nicht zu tun. Das Formular, das Sie haben, ist schon perfekt, und wenn der andere Server die Anfrage ab, dass, wenn es die Entscheidung trifft, um Benutzer entweder zu erlauben und weiter durch den Ort in oder sie in der Kopfzeile, um ihre Referer (sic) zu umleiten zurück. Wenn wieder auf die Referer Umleitung sie möglicherweise, auf eine Nachricht heften, der sagt, was falsch war, wie? Fehler = no_auth

ich dies schrieb vor einiger Zeit für eine andere Frage. Hoffe, das hilft:

Wie übergeben Sie eine authenticaticated Sitzung zwischen Anwendungsdomänen

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top