web-dev-qa-db-ja.com

クレジットカード番号のみを転送する場合、サーバーはPCIコンプライアンスを満たす必要がありますか?

私は現在支払いシステム( braintree )を実装しようとしていますが、これがどのように機能するかは完全にはわかりません。

私はそれが次のように機能することを望みます:

  • ユーザーが製品を選択し、「購入」をクリックします
  • ユーザーは支払いに使用するクレジットカードを入力し、[OK]をクリックします
  • クライアントがクレジットカード情報をサーバーに送信する
  • 私のサーバーはこれをブレインツリー(またはPaypal)に転送し、クレジットカードIDトークンを取得します
  • そのトークンを使用して、ユーザー、クレジットカード、および定期的な請求計画に同意し、それが機能したかどうかをクライアントに通知します
  • ユーザーはクライアントでそれが機能したことを確認し、サービスを楽しみ始めます

したがって、可能であればPaypalアカウントのようなものをユーザーに要求したくありません。また、braintree APIがどのように機能するかはまだ100%わかりませんが、その外観から、複数のクレジットカードを持つCustomerを作成できます。ただし、この情報を管理者にのみ転送するサーバーにクレジットカードを送信する必要があります。

これに対する答えが「はい、サーバーはPCIコンプライアンスを満たしている必要があります」である場合、カストディアンのユーザーアカウントを必要としない支払いシステムを実際に使用できるかどうかを知りたいのですが。

4
displayname

はい、サーバーは説明されていますはPCIに準拠している必要があります。ただし、ほとんどのプロセッサは動作モードをサポートしています説明とは異なる、スコープを制限します*。

あなたは言う:

  • クライアントがクレジットカード情報をサーバーに送信する
  • 私のサーバーはこれをブレインツリー(またはPaypal)に転送し、クレジットカードIDトークンを取得します

クレジットカードデータがサーバーによって送信、保存、または処理される場合、サーバーは範囲内にあり、SAQ CやSAQ Dなどのかなり大きなPCIコンプライアンスの対象となります。

ただし、ほとんどのプロセッサーはiframeおよび/またはJavaScriptテクノロジーをサポートしているため、サーバーをループから削除できます。クライアントはカードデータをプロセッサーに直接送信し、プロセッサーは、あなたに渡すことができるチットをいくつか渡しますクレジットカードの代わりに購入を続行します。次に、チットを現金化して、プロセッサに渡したカードデータを表すトークンを取得します。

このようなテクノロジーが使用されていて、システムがカードデータに直接関与しないように保護している場合、コンプライアンス要件はSAQ AまたはSAQ A-EPに下がります。

プロセッサーに「サーバーを範囲外に保ち、PCIコンプライアンス要件を削減できるトークン化のための製品はありますか?」と尋ねる必要があります。 (もし彼らが「え?」と言うなら、新しいプロセッサーを見つけてください。)

[もしそうなら、それは]カストディアンでユーザーアカウントを必要としない支払いシステムを持つことは実際に可能です。

いいえ。カードの処理をプロセッサに許可している場合は、送金(購入など)や送金(チャージバックなど)に使用する銀行口座を彼らに提供する必要があります。そして、彼らが銀行口座を必要とするとき、彼らはあなたが誰であるかといったあらゆる面倒な情報を必要とするでしょう。プロセッサは、実際には、カードネットワークにあなたを後援しています。あなたが振る舞いが悪い場合、彼らはあなたの借金に対して責任があります。

(そして、彼らが実際のカードデータを管理している(トークン化している)か、単にトランザクションを処理しているにかかわらず、それは真実です...クレジットカード番号は、カードネットワークによる処理なしでは役に立ちません。 、およびこのシステムは匿名のメンバー向けに設計されていません。匿名性が必要な場合は、クレジットカードの代わりにビットコインまたはSimoleonsで請求してください)。


*あなたのビジネスがクレジットカードの支払いを受け入れている場合、実際のクレジットカードのデータを自分で触れなくても、あなたはPCIに拘束されます。あなたができる最高のことはスコープを減らすことです-たとえば、SAQ Aの対象である場合、要件は〜300ではなく〜15になりますSAQ D.

5
gowenfawr

Braintreeのドキュメントは を示しています。ここでカードデータは直接送信され、トークンのみが返されます。このケースがニーズに合う場合、PCIコンプライアンスは不要です。

したがって、フローは次のようになります。

  • ユーザーは、Braintree JavaScriptライブラリによって作成されたフォームにカードデータを入力し、送信します。それは彼らのサーバーに行き、彼らはあなたのフォームの隠しフィールドに挿入されたトークンを送り返します。
  • その後、フォームはサーバーに送信されますが、Braintreeのサーバーに保持されているカードを参照するトークンしか含まれていません。
  • サーバーはトークンをカードデータのように使用します(顧客に関連付ける、サブスクリプションを設定するなど)が、Braintreeアカウントの外では使用できないため、PCI-DSSのスコープの一部ではありません。
1
André Borie