web-dev-qa-db-fra.com

Comment stocker les informations de carte de crédit pour les transactions répétées tout en restant conforme à la norme PCI?

Je révise notre bombe à retardement absolue d'un système de traitement des commandes qui nous mettrait hors de service demain si nous étions audités pour la conformité PCI. C'est tellement amateur que ça fait peur.

Je prévois de faire valoir aux plus hauts responsables que les responsabilités liées au stockage des informations CC l'emportent sur les avantages de ne pas avoir à demander de nouveau des numéros au client, mais je sais que je vais me faire demander comment des fournisseurs comme Amazon et évitez de stocker des informations pour des achats répétés, et je n'ai pas de réponse à cela.

Alors, comment faire les fournisseurs comme Amazon et tous ceux qui facturent mensuellement autorisent les frais futurs sans stocker des informations comme CVV, ce qui est expressément interdit par PCI DSS v3?

J'ai lu ailleurs que les jetons peuvent être créés et stockés à la place des informations de bande, mais la possession d'un jeton représentant le contenu de la bande n'est-elle pas aussi précieuse que les informations de bande elles-mêmes? Toute personne en possession du jeton pourrait facturer des frais frauduleux, alors qui se soucie de savoir s'ils ont cela ou les informations CC/CVV réelles?

Ou la conversion de jetons est-elle juste une façon de dire "nous ne stockons pas le PAN/CVV réel" et de transmettre les problèmes de conformité réglementaire à la personne qui l'a émise?

41
Ivan

Ivan, c'est un sujet absolument énorme . Et vous avez un tas de questions ici. J'essaierai d'aider, mais cela sera probablement fermé car trop large.

Je prévois de faire valoir aux plus hauts responsables que les responsabilités liées au stockage des informations CC l'emportent sur les avantages de ne pas avoir à demander de nouveau des numéros au client, mais je sais que je vais me faire demander comment des fournisseurs comme Amazon et évitez de stocker des informations pour des achats répétés, et je n'ai pas de réponse à cela.

Il est parfaitement acceptable de stocker des données de carte de crédit, mais il existe une tonne de règles régissant la façon dont vous le faites - où, comment, audit, etc. beaucoup de livres sur ce sujet.

Alors, comment les fournisseurs comme Amazon et tous ceux qui facturent mensuellement autorisent-ils les frais futurs sans stocker des informations comme CVV, ce qui est expressément interdit par PCI DSS v3?

Vous n'avez pas du tout besoin d'avoir les informations CVV, cela aide simplement avec la fraude. Après l'avoir vérifiée la première fois (ce qui peut être fait sans l'écrire sur le disque), vous pouvez supposer que la carte n'est pas frauduleuse. Il a fait le travail qu'il devait faire.

J'ai lu ailleurs que les jetons peuvent être créés et stockés à la place des informations de bande, mais la possession d'un jeton représentant le contenu de la bande n'est-elle pas aussi précieuse que les informations de bande elles-mêmes? Toute personne en possession du jeton pourrait facturer des frais frauduleux, alors qui se soucie de savoir s'ils ont cela ou les informations CC/CVV réelles?

La tokenisation est bonne si vous parvenez à extraire les informations du titulaire de la carte de votre environnement et à les confier à quelqu'un d'autre. Le "jeton" est un identifiant unique qui permet à votre système d'agir toujours dans le sens traditionnel. Vous fournissez une liste de jetons à votre fournisseur et ils les traduisent en nombres réels.

C'est bien car c'est leur responsabilité de stocker/traiter/etc les vrais nombres. Votre responsabilité disparaît à cet égard.

Ou la conversion de jetons est-elle juste une façon de dire "nous ne stockons pas le PAN/CVV réel" et de transmettre les problèmes de conformité réglementaire à celui qui l'a émis?

Exactement, sauf que c'est à qui le traite , et non à qui génère les jetons. :)

Edit: beaucoup d'entreprises ne s'y intéressent pas sans comprendre le coût de la non-conformité.

Voir http://www.pcistandard.com/card-association-fines/

34
Tim Brigham

Cela fait quelques années, mais quand je faisais du commerce électronique (y compris un emploi pour une grande entreprise qui avait précédemment stocké des milliers de numéros de cartes de crédit en texte brut), ma méthode préférée était d'utiliser le service CIM d'Autorize.net (d'autres fournisseurs ont des services similaires , c'est juste celui que je connais le mieux; cherchez celui qui vous convient le mieux).

La façon dont cela a fonctionné était que vous avez envoyé les informations au processeur et qu'ils ont renvoyé un jeton. Le jeton est plus sûr que les données réelles de la carte, car il est bon de charger cette carte sur votre compte en utilisant ce seul processeur. Quelqu'un ne pouvait pas prendre le jeton et l'utiliser ailleurs, et s'il l'obtenait, tout ce qu'il pourrait en faire serait de vous facturer de faux frais, ce qui mettrait de l'argent dans votre compte et vous ferait mal paraître, mais vous pourriez rembourser l'argent et annuler les jetons et aucun dommage réel sauf dérangement temporaire - pas d'argent perdu pour les méchants et pas besoin de remplacer la carte.

Si les frais récurrents sont cohérents et planifiés, certains autres services de traitement des cartes vous permettent de configurer des plans d'abonnement, où vous envoyez initialement les informations de la carte avec une description du plan de la fréquence de facturation du montant. Par la suite, vous pouvez annuler le plan, mais vous n'avez ni les informations de la carte ni un jeton, vous ne pouvez donc pas les charger accidentellement (comme vous le pourriez avec un jeton) ou perdre leurs informations de carte en cas de violation.

Ne stockez jamais CVV de quelque manière que ce soit, ce qui est strictement interdit. Vous n'en avez pas du tout besoin, et l'avoir est un énorme handicap. Vous ne devriez pas avoir besoin de stocker quoi que ce soit sauf au plus un jeton ou un identifiant d'abonnement. Les 4 derniers chiffres et le type de carte (visa/mastercard/etc) peuvent aider le service client, mais pas vraiment nécessaires.

7
RSTaylor

RSTaylor vous pointe dans la bonne direction. Il existe des entreprises qui vous fourniront le traitement des cartes de crédit (moyennant des frais, bien sûr). Vous pouvez créer un site pour que le numéro du client ne soit jamais transmis à vos serveurs, même pas en RAM, il ne peut donc pas y être compromis.

Avertissement 1: Vous devrez vous fier à l'intégrité et à la conformité de cette entreprise. Je n'en sais pas assez pour suggérer une entreprise en particulier.

Clause de non-responsabilité 2: Il est également quelque peu difficile d'obtenir la fonction de carte de crédit de manière transparente dans votre site, mais cela peut être fait.

2
O. Meyer

Pour votre question

Alors, comment les fournisseurs comme Amazon et tous ceux qui facturent mensuellement autorisent-ils les frais futurs sans stocker des informations comme CVV, ce qui est expressément interdit par PCI DSS v3?

Je veux donner un scénario exact à ce sujet.

  1. J'achète un livre d'Amazon via mon Kindle en un seul clic, mais le paiement échoue. Je suis sûr d'avoir suffisamment de crédit sur ma carte de crédit et je fais toujours des achats avec la même carte sur Amazon.
  2. Lorsque je vérifie les détails de la commande, il indique qu'il y a un problème dans le processus de paiement et me demande d'utiliser une autre carte.
  3. Lorsque je vérifie la carte et les informations bancaires, je me rends compte que ma banque a un chèque de fraude car elle a volé certaines données de carte et CVV est requis pour tous les paiements en ligne.

Cela signifie donc qu'il s'agit d'une règle de fraude entre le commerçant et la banque.

0
erhun