Ich erstelle einen Dienst, bei dem Benutzer für bestimmte Produkte bezahlen müssen. Jetzt kämpfe ich mit dem Transaktionsteil.Wie Transaktionen sicher verarbeitet werden
Ich erstelle eine Transaktion, wenn Benutzer zur Kasse gehen. Die Payment-Gateway hat die folgende URLs:
ReturnUrl -> The URL the costumer is being redirected to after a succesfull payment (after clicking "Back to Webshop")
NotifyUrl -> The URL (server-to-server call) thats being called when the user finishes his payment, when the costumer is being redirected back via ReturnUrl
CallbackUrl -> The URL thats being called when the user closes his browser after a succesfull payment, without clicking the "Back to Webshop" button, and hence not being redirected via ReturnUrl
Nun, ich habe Schwierigkeiten mit, wie sicher die Transaktion abgeschlossen setzen, wenn sie entweder NotifyUrl oder CallbackURL zurückzukehren. Ich erstelle ein Token, wenn ich die Transaktion in die Datenbank setze, so dass nicht autorisierte Benutzer nichts ändern/ändern können. Aber ich sende den Token mit POST an meinen Zahlungsanbieter, was bedeutet, wenn sie wissen, an welche URL eine GET-Anfrage mit allen Informationen wie token und transaction_id gesendet werden soll, könnten sie dort surfen, ohne meinen Server zu betrügen und zu überlisten Anfrage kam von meinem Zahlungsprozessor.
Wie würde ich das richtig machen?
Ich bin mir nicht sicher, ob ich Ihrer Logik folgen kann. Was genau könnte jemand durchsuchen und wo? Und Sie sagen, dass Ihre Transaktions-IDs seriell sind (damit jemand es herausfinden kann) und dass Sie nicht überprüfen, ob eine Anfrage von Ihrem Zahlungsanbieter kommt? – Shadow