這是我第一次嘗試使用貝寶支付網關集成(Web應用程序是建立在Ruby on Rails的),我堅持了以下方案:安全問題從支付網關重定向
買某些項目立即,用戶點擊貝寶標準按鈕,並重定向到其支付網關,用戶可以進行支付,最終用戶重定向回第一個站點(因爲「自動返回」已啓用)
返回URL類似於以下內容:
此URL然後觸發一個名爲「record_transaction」的控制器操作,如果status(st)爲「Completed」,則交易記錄標記爲成功並保存到數據庫,並立即向客戶發出購買項目。 所以,現在的安全問題是:
重複交易的可能性;但是這可以通過 在數據庫中存儲「tx」值並保持其唯一性來避免。
如果用戶以某種方式在瀏覽器獲取上述返回URL的保持,登錄, 用戶可以只發出返回URL後(與PARAMS「TX」的價值觀, 「AMT」和「ITEM_NUMBER」改變)新標籤。這將觸發控制器動作「record_transaction」 ,因此用戶可以在沒有支付相同費用的情況下獲得該項目;如果我們用paypal重新驗證與交易編號 「tx」相對應的交易細節,但是這個過程將需要時間,並且我們的 要求是使其保持瞬時,所以可以避免 。那麼,什麼可以是最好的 方法來處理呢?
- 可以使用SSL證書幫助我們嗎?
我正在尋找某人建議我最好的方法來照顧這些安全問題。