2012-04-20 15 views
0

私はASP.NETウェブサイトでPayPalのウェブサイト支払い標準を使用しています。 「今すぐ支払う」ボタンをユーザーがクリックすると、私はcodebhindで次の手順を実行したときに、私は何PayPalのウェブサイトの支払い基準で隠しフィールドを編集しないようにするにはどうすればいいですか?

は次のとおりです。

  1. DBの状態がPayPalのフォームの
  2. 世代のための隠しフィールドを変更しますitems
  3. PayPalフォームをPayPalに送信するjavascript関数を呼び出すにはScriptManager.RegisterClientScriptBlock()を呼び出します。

私は、ユーザーがウェブブラウザで停止を押して、隠しフォームの値を編集してフォームを送信できることを心配しています。これを防ぐ方法はありますか?または、より良い選択肢?

ありがとうございました!

答えて

3

私はPPスタンダードを行っていません。私はGatewayとPro/Express Checkoutを使用しましたが、かなりの期間でしたが、あなたの質問はより一般的な方法で処理することができます...

あなたの計画はあなたを守るために何もしませんウェブ上の他のHTMLフォームと同様に、HTTPリクエストとレスポンスは、すぐに利用できるツールを使用して検査し改ざんすることができます。

改ざんを防止するための一般的な方法は、クライアント/ブラウザからの送信された値のサーバー側の検証を行うことです(親指のルールは「信頼できません」)。あなたのシナリオでは、あなたはサーバー側で何かをしていますが、それはまだの前にのデータの実際の提出先であるPayPalです。実際にデータを「ターゲット」に送信するステップは、依然としてブラウザ/クライアントです。そのために問題があります。検証されるデータは、あなた以外のシステム用です(したがって、PayPalを検証することはできません)。

追加されたセキュリティ層がない限り、署名や暗号化を行うと、改ざんされると常に脆弱になります(表示は不可解なことですが、見ることができます)。

私は信じられませんが(私は間違っている可能性があります)PPスタンダードにはサーバー間サーバーオプションがあります。これは、クライアント/ブラウザからデータを完全に「隠す」ことになります。何も見えず、何も改ざんすることはありません。データ転送はバックグラウンドで行われます。クライアント/ブラウザには何も知られていません。

しかし、そのPayPal Payments Standard and Button Manager APIはこれを行う正しい/安全な方法のようです。

本質的には、「暗号化されたボタン」と呼ばれるものを作成します。このようにして、データを検査する人は気が散っているように見えます。それに応じてデータを復号化できるため、PayPalには意味があります。

また、あなた:...更新

第H ...

- それは、データが改ざんから保護/確保されている方法です(しかし、再び、何を見ることができることはちんぷんかんぷんで表示していません)データを保存するためにPayPal IPNを考慮する必要があります。あなたは、ボタンをクリックするすべての人が実際に支払いを行う(またはうまくいく)ことを前提としています(私は思っています)。 IPNを使用すると、(注文関連のデータや在庫更新などを保存する場所です)のPayPal からのデータを "聴く"ことができます....

0

私は、 PHPを使って作業していますが、NVP APIを使用すると、paypalだけで使用できるトークンを使ってリダイレクトするリンクを得ることができます。すべてのリンクはhttps://www.sandbox.paypal.com/webscr?cmd=_express-checkout&token=TOKENのようになります。TOKENは以前PayPal APIを呼び出して取得したトークンです。

私はExpressCheckout用にのみ開発しました。あなたがここにAPIを確認することができます。メモリが提供している場合

https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/howto_api_reference

+0

を、そのトークンに**前**、あなたのNVPデータを送信するサーバからサーバへの呼び出しがあります。トークンは(以前に)提出されたNVPデータ(その時点**はサーバー間の呼び出しによって**送信されたもの)に戻ってクライアント/ブラウザをリダイレクトする "識別子リンク"です(POSTされたものはありませんクライアントによって) - リダイレクトされたばかりです。 – EdSF

関連する問題