2009-06-24 8 views
0

Stellen Sie sich eine Standard-Anmeldeseite vor, die einige Benutzerinformationen wie Name, Adresse usw. erfasst. Es verfügt über eine Schaltfläche "Jetzt kaufen", die auf eine Zahlungsseite (WorldPay).Wechsel von einer https-Seite zu einer anderen mit einem anderen Zertifikat

Nun ist die Forderung, dass alles sicher sein sollte, so dass Mittel (und korrigiert mich wenn ich falsch liege)

A) Ich brauche ein SSL-Zertifikat auf IIS zu erhalten und zu installieren.

B) Ich muss dann die Anmeldeseite sicher machen (mit Blick auf genau, wie dies zu tun, aber wenn jemand will wissen lassen Sie mich das große sein würde!)

So vorausgesetzt, dass die Anmelden der Seite ist https unter einem Zertifikat, gibt es überhaupt einen Grund, dass ein Problem bei der Weiterleitung zu WorldPay (unter SSL, aber unter einem anderen Zertifikat) auftreten sollte?

Ich kann mir nicht vorstellen warum, ich werde dies nicht über AJAX oder irgendetwas tun (siehe HTTPS request via AJAX from HTTP page), aber manchmal können diese Dinge dich beißen!

Dank Duncan

Antwort

1

Das einzige Problem, das ich forsee kann, ist, dass, wenn Sie eine direkte Form POST https://mysite.com/-https://payment.net/ Benutzer wird höchstwahrscheinlich eine Warnseite sehen (FF3.5 zeigt eine „nicht vertrauenswürdige Verbindung“ in einem ähnlichen Szenario - es ist da, um Phishing-Angriffe abzuwehren. Eine mögliche Lösung hierfür wäre, das Formular mysite.com an die Domäne mysite.com zu senden und dann einen Controller oder ähnliches zu haben, der den Benutzer von da an auf payment.net umleitet. (Sie möchten darauf achten, dass Sie nicht mit den privaten Informationen des Benutzers loosey-goosey spielen, indem Sie sie über eine URL offen legen.)

Meine Vermutung ist, dass diese Frage etwas ist, mit dem sich Ihre Zahlungsseite befassen muss ziemlich oft. Ich würde vorschlagen, sie zu kontaktieren, um herauszufinden, ob sie spezifische Empfehlungen zum Umgang mit SSL, Warnungen usw. haben.

+0

Hmmmm, das ist eine kleine Überraschung für mich, muss ich sagen. Ich hätte gedacht, dass www.mysite.com wurde vollständig unter einem Zertifikat gesichert, wenn ich auf www.payment.net gehen, die unter einer anderen Domain und Zertifikat ist, sollte die Hauptsache sein, dass es sicher ist .... so dachte nicht, dass es ein Problem geben würde. Werde es mit WorldPay klären, aber danke für den Kopf! – Duncan

1

Es sollte kein Problem mit der Umleitung von einer Domäne zur nächsten mit dem gleichen Protokoll (https) geben. Manchmal erkennt jedoch Virensoftware diese Art der Umleitung als "Phishing", aber Sie sollten in Ordnung sein, wenn WorldPay eine vertrauenswürdige Quelle ist. Versuchen Sie, Benutzerdaten an WorldPay zu übermitteln oder WorldPay als Zahlungsmodul zu verwenden? Ich würde nicht beginnen, irgendwelche Benutzerinformationen über POST/GET vars beim Wechseln von Domänen zu übergeben.

Die Antwort auf Ihre Anmeldeseite ist, dass Sie https (idealerweise aus dem Code dahinter) erzwingen müssen, damit Benutzer ihre Kontoinformationen mit der SSL-Verschlüsselung eingeben können und dieses vertrauenswürdige Schlosssymbol sehen;).

EDIT: CODE-BEISPIEL

Ihr Zertifikat erhalten: In Ihrem IIS, gehen Sie auf Ihre Eigenschaften der Website aufnehmen, klicken Sie auf die Registerkarte Sicherheit, dann Zertifikate Server. Führen Sie den Schritt-für-Schritt-Prozess aus, bis eine Zertifikatsanforderung an die Zertifizierungsstelle des Zertifikats (GeoTrust, Verisign usw.) gesendet werden kann. Sobald Sie die Zertifikatsanforderung erhalten haben, kann die Zertifikatsanforderung abgeschlossen werden und Ihr https funktioniert.

Überprüfen Sie auch, ob Ihre SSL-Software mit den neuesten Updates auf dem neuesten Stand ist. Das sollte die Anforderungen abdecken. Ich würde mich jedoch auch an WorldPay wenden, um sicher zu gehen, dass Sie die Standards einhalten.

+0

Ich möchte Daten an die WorldPay-Domain senden, die ich bereits auf meinem https-Formular erfasst habe (zB Adresse) – Duncan

+0

Wenn ich nur eine Seite haben möchte, die https ist, mache ich das über IIS, indem ich mit der rechten Maustaste auf die Seite klicke. Gehen Sie zu Dateisicherheit und wählen Sie dann Sichere Kommunikation, oder bin ich ein bisschen aus? Auch auf der programmatischen Bit sicherstellen, ich denke, ich werde dies verwenden - http://www.codeproject.com/KB/web-security/WebPageSecurity_v2.aspx – Duncan

+0

Sie müssen noch ein Zertifikat einrichten, um mit Ihrer primären Domäne zu arbeiten, Also würde ich einfach das Website-Level anstelle der einzelnen Seite einrichten. In Ihrem Seitencode, abhängig von der serverseitigen Sprache, mit der Sie gerade arbeiten, überprüfen Sie einfach das aktuelle Protokoll der Seite und wenn es nicht https ist, ändern Sie es in https. Oder erstellen Sie eine https-Klasse, die Sie bei Bedarf auf Ihre Seite erweitern können. Arbeitest du mit asp.net? – Acorn