Il mio server deve soddisfare la conformità PCI se inoltra solo il numero della carta di credito?

2

Attualmente sto cercando di implementare un sistema di pagamento ( braintree ), ma non sono del tutto sicuro di come funzioni .

Ciò che spero funzioni:

  • L'utente seleziona un prodotto e fa clic su "acquista"
  • L'utente inserisce una carta di credito con cui pagare e fa clic su "OK"
  • Il mio cliente invia i dati della carta di credito al mio server
  • Il mio server lo inoltra a Braintree (o Paypal) e torno a un token ID carta di credito
  • Usando quel token firmo un accordo per l'utente, la carta di credito e il mio piano di fatturazione ricorrente e comunico al cliente se ha funzionato o meno
  • L'utente vede sul client che ha funzionato e inizia a godersi il servizio

Quindi, non voglio che l'utente richieda qualcosa come un account PayPal, se possibile. Inoltre, non sono ancora sicuro al 100% di come funziona l'API Braintree, ma dal suo aspetto posso creare un Customer che ha più carte di credito. Tuttavia, dovrei trasmettere la carta di credito al mio server che inoltra queste informazioni solo al custode.

Se la risposta è "sì, il tuo server deve soddisfare la conformità PCI", mi piacerebbe sapere se è effettivamente possibile avere un sistema di pagamento che non richiede un account utente presso il custode.

    
posta displayname 01.08.2016 - 19:33
fonte

2 risposte

4

Sì, il tuo server come descritto deve essere conforme PCI. Tuttavia, la maggior parte dei processori supporta modalità operative, diverse da quelle che descrivi , che limiterà il tuo ambito *.

Dici:

  • My client sends the credit card information to my server
  • My server forwards this to braintree (or paypal) and I get back a credit card ID token

Se i dati della carta di credito vengono trasmessi, archiviati o elaborati dal server, il server è nel campo di applicazione e si è soggetti a un set di conformità PCI ragionevolmente ampio come SAQ C o SAQ D.

Tuttavia, la maggior parte dei processori supporta le tecnologie iframe e / o javascript che permetteranno al server di essere rimosso dal ciclo - il client invia i dati della sua carta direttamente al processore, e il processore gli consegna alcuni chit che possono consegnare a te al posto di una carta di credito per portare avanti l'acquisto. Tu, a tua volta, incassi quella pedina per ottenere un token che rappresenta i dati della carta che hanno consegnato al processore.

Quando tale tecnologia è in uso e isola i tuoi sistemi da qualsiasi coinvolgimento diretto con i dati delle carte, i tuoi requisiti di conformità scendono fino a SAQ A o SAQ A-EP.

Dovresti chiedere al tuo processore " Quali offerte hai per la tokenizzazione che mi consentirà di tenere i miei server al di fuori del campo di applicazione e ridurre i miei requisiti di conformità PCI? " (Se dicono "huh?" , trova un nuovo processore.)

[if so, is it] actually possible to have a payment system that does not require a user account at the custodian.

No. Se stai consentendo a un processore di gestire le carte per te, allora devi dare loro un conto bancario da usare nel trasferimento di fondi (ad es. Acquisti) e da (ad esempio, chargeback). E quando vogliono il conto in banca, vorranno tutti i tipi di informazioni fastidiose come chi sei. Il processore, infatti, ti sponsorizza nella rete delle carte. Sono responsabili per i tuoi debiti se ti comporti male.

(E questo è vero se gestiscono i dati delle carte per te (tokenizing) o semplicemente elaborano le transazioni ... I numeri delle carte di credito non sono utili senza l'elaborazione da parte della rete di carte, non puoi caricarli senza una connessione al sistema, e il sistema non è progettato per i membri anonimi.Se si desidera l'anonimato, caricare in Bitcoin o Simoleon invece di carte di credito).

* Se la tua azienda accetta pagamenti con carta di credito, sei vincolato da PCI, anche se non tocchi tu stesso i dati effettivi della carta di credito. Il meglio che puoi fare è ridurre il tuo ambito - se sei soggetto a SAQ A, ad esempio, avrai ~ 15 requisiti invece di ~ 300 per SAQ D.

    
risposta data 01.08.2016 - 22:24
fonte
1

I documenti di Braintree mostrano un esempio dove i dati della carta vengono inviati direttamente a loro e tu solo torna indietro di un token. Se questo caso soddisfa le tue esigenze, la conformità PCI non è necessaria.

Quindi il flusso sarebbe così:

  • L'utente inserisce i dati della propria carta in un modulo creato dalla libreria Javascript di Braintree e lo invia. Va al loro server e restituisce un token, che viene inserito in un campo nascosto nel modulo.
  • Il modulo viene quindi inviato al server, ma non contiene altro che un token che fa riferimento alla carta conservata sui server di Braintree.
  • Il tuo server utilizza il token come se fosse un dato di carta (puoi associarlo ai clienti, impostare abbonamenti, ecc.) ma non può essere usato al di fuori del tuo account Braintree e quindi non fa parte di PCI-DSS ' ambito di applicazione.
risposta data 01.08.2016 - 19:57
fonte

Leggi altre domande sui tag