Guide de sécurité de l'intégration
Assurez votre conformité PCI et sécurisez les communications client-serveur.
La norme de sécurité des données de l’industrie des cartes de paiement (PCI DSS) est la norme de sécurité mondiale pour toutes les entités qui stockent, traitent ou transmettent le titulaire de la carte ou des données d’authentification sensibles. La norme PCI DSS établit un niveau de protection de base pour les consommateurs et contribue à réduire la fraude et les violations de données dans l’ensemble de l’écosystème de paiement. Toute personne impliquée dans le traitement, la transmission ou le stockage des données de carte doit respecter la PCI DSS.
Validez votre conformité PCI
La conformité PCI est une responsabilité partagée qui s’applique à Stripe et à votre entreprise :
- Stripe est certifiée chaque année par un évaluateur de sécurité agréé PCI (QSA) indépendant en tant que prestataires de services PCI de niveau 1 répondant à toutes les normes PCI.
- En tant qu’entreprise qui accepte des paiements, vous devez le faire dans le respect des normes PCI et attester chaque année de cette conformité.
Vérifiez les exigences en matière de documentation pour votre entreprise dans votre Dashboard et consultez ce guide pour découvrir comment Stripe peut vous aider à vous conformer à la norme PCI.
Utiliser des intégrations à faible risque
Certains modèles opérationnels exigent la saisie de numéros PAN non tokenisés sur une page de paiement. Si votre entreprise traite directement des données sensibles relatives aux cartes de crédit lors de l’acceptation des paiements, vous pourriez être tenu de respecter plus de 300 contrôles de sécurité dans le cadre de la norme PCI DSS. Cela pourrait vous obliger à acheter, mettre en œuvre et entretenir des logiciels et du matériel de sécurité dédiés, et à engager des auditeurs externes pour vous aider à satisfaire à vos exigences en matière d’évaluation annuelle.
De nombreux modèles économiques n’ont pas besoin de se charger des données sensibles des cartes. Vous pouvez plutôt utiliser l’une de nos intégrations de paiement à faible risque pour collecter et transmettre en toute sécurité les informations de paiement directement à Stripe sans qu’elles passent par vos serveurs, ce qui réduit vos obligations PCI.
Données de carte hors de portée que vous pouvez stocker en toute sécurité
Stripe renvoie des informations de carte non sensibles en réponse à une demande de paiement. Il s’agit du type de carte, de ses quatre derniers chiffres et de sa date d’expiration. Ces données ne sont pas soumises à la conformité PCI, vous pouvez donc les stocker dans votre base de données. De plus, vous pouvez stocker toute donnée renvoyée par notre API.
Utilisez les protocoles TLS et HTTPS
TLS désigne le processus de transmission sécurisée des données entre le client (l’application ou le navigateur que votre client utilise) et votre serveur. Le protocole SSL (Secure Sockets Layer) effectuait cette fonction initialement, mais il est maintenant obsolète et n’est plus suffisamment sécurisé. Il a donc été remplacé par le protocole TLS, mais le terme SSL est encore parfois utilisé pour faire référence au protocole TLS et sa fonction de transmission sécurisée des données.
Les pages de paiement doivent utiliser une version récente (TLS 1.2 ou supérieure) puisque cela réduit de façon importante le risque que vous ou vos clients soyez victimes d’attaques d’intercepteurs. Le protocole TLS vise à :
- Chiffrez le trafic entre le client et votre serveur et vérifiez-en l’intégrité.
- Vérifiez que le client communique avec le bon serveur. En pratique, cela signifie généralement que le propriétaire du domaine et le propriétaire du serveur sont la même entité. Cela contribue à éviter les attaques d’intercepteurs. Sans cela, vous n’avez aucune garantie que vous chiffrez le trafic vers la bonne destination.
L’utilisation du protocole TLS nécessite un certificat numérique, un fichier émis par une autorité de certification (AC). L’installation de ce certificat garantit au client qu’il communique réellement avec le serveur auquel il est censé s’adresser, et non pas avec un imposteur. Procurez-vous un certificat numérique auprès d’un fournisseur de certificat réputé, tel que :
Si nécessaire, vous pouvez tester votre intégration sans utiliser le protocole HTTPS, et l’activer au moment de commencer à accepter des paiements réels. Cependant, toutes les interactions entre votre serveur et Stripe doivent utiliser HTTPS (lorsque vous utilisez nos bibliothèques).
Configurez le protocole TLS
Pour configurer le protocole TLS :
- Achetez un certificat auprès d’un fournisseur approprié.
- Configurez votre serveur pour qu’il utilise le certificat. Cette étape est complexe, alors suivez le guide d’installation du fournisseur de services que vous utilisez.
Puisque le protocole TLS est constitué d’une suite complexe d’outils cryptographiques, certains détails peuvent vous échapper. Nous vous recommandons d’utiliser le test de serveur SSL de Qualys SSL Labs pour vérifier que tout est configuré de façon sécurisée.
Considérations de sécurité
L’ajout de JavaScript depuis d’autres sites rend votre sécurité dépendante de la leur et pose un risque pour la sécurité. Si ces sites sont compromis, un attaquant pourrait parvenir à exécuter du code arbitrairement sur votre page. En pratique, de nombreux sites utilisent JavaScript pour faire fonctionner des services comme Google Analytics, même sur des pages sécurisées. Néanmoins, nous vous recommandons d’en minimiser l’ajout.
Si vous utilisez des points de rappel Web webhooks, utilisez TLS pour le point de terminaison afin d’éviter que le trafic soit intercepté et que les notifications soient modifiées (les informations sensibles ne sont jamais incluses dans un événement du point de rappel Web). Vous devez également vérifier les signatures des points de rappel Web et ajouter les adresses IP de Stripe à la liste blanche afin de vous assurer que chaque point de rappel Web Stripe que vous recevez est envoyé exclusivement par Stripe.
Bien qu’il soit important de respecter les normes de sécurité des données, votre approche de la sécurité ne doit pas s’arrêter là. Voici quelques ressources intéressantes pour en savoir plus sur la sécurité du Web :
Politique de sécurité du contenu
Si vous avez mis en place une politique de sécurité du contenu, l’ensemble des directives requises par Checkout, les composants intégrés Connect et Stripe.js sont les suivantes :
Prise en charge de l’isolation d’origine croisée
À l’heure actuelle, nous ne prenons pas en charge les sites isolés d’origine croisée.
L’isolation d’origine croisée nécessite la prise en charge de toutes les dépendances, et plusieurs dépendances clés qui activent nos offres de paiement ne prennent pas encore en charge cette fonctionnalité.