PayPal_Adaptive Gemに関するセキュリティ上の懸念
-
28-10-2019 - |
質問
Rails 3.1を備えたPayPal_Adaptive Gemを使用して、鎖でつながれています。しかし、見た後 http://railscasts.com/episodes/143-paypal-security おそらく、支払いリクエストにセキュリティ対策を追加する必要があることを心配しました。具体的には、誰かが私のリクエストで送信したアイテムの価格を操作できるようにしたくありません。もちろん、私は標準のPayPal_Adaptive GEMリクエストを使用しています:
pay_request = PaypalAdaptive::Request.new
data = {
"returnUrl" => "http://testserver.com/payments/completed_payment_request",
"requestEnvelope" => {"errorLanguage" => "en_US"},
"currencyCode"=>"USD",
"receiverList"=>{"receiver"=>[{"email"=>"testpp_1261697850_per@nextsprocket.com", "amount"=>"10.00"}]},
"cancelUrl"=>"http://testserver.com/payments/canceled_payment_request",
"actionType"=>"PAY",
"ipnNotificationUrl"=>"http://testserver.com/payments/ipn_notification"
}
pay_response = pay_request.pay(data)
if pay_response.success?
redirect_to pay_response.approve_paypal_payment_url
else
puts pay_response.errors.first['message']
redirect_to failed_payment_url
end
私の質問は、ライアンが彼のレールキャストで行うように人々が価格を変更するのを防ぐために、この要求を暗号化する必要がありますか?もしそうなら、そうするためにこのコードを操作するにはどうすればよいですか?
解決
IPN検証は間違いなく良い習慣です。しかし、送信される変数を暗号化することに関して。いいえ、それは必要ありません。
リストされている例 http://railscasts.com/episodes/143-paypal-security ウェブサイトの支払い標準を使用しています。この場合 は 暗号化するのが良い。
しかし、適応型の支払いは、サーバーからPayPalのサーバーからサーバーへのAPI呼び出し(「Pay」API)のシリーズです。買い手にさらされた唯一の部分は、買い手が操作できない一時的なトークンであるペイキーです。
所属していません StackOverflow