Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL Server 2008 + PCI-Konformität? Betrifft sowohl PCI als auch symmetrische Schlüssel!

Wenn Sie die PAN (Kartennummer) speichern, muss diese unbedingt verschlüsselt werden.

Wenn Sie den Namen des Karteninhabers, das Ablaufdatum und die Ausstellungsnummer speichern (und diese können mit der PAN verknüpft werden), dann sollten sie sollten verschlüsselt werden, aber (mein Verständnis) ist, dass es nicht unbedingt notwendig ist. PCI-DSS besagt lediglich, dass zumindest die PAN verschlüsselt werden muss.

Der CV2/AVS/CSC-Code kann nach der Autorisierung nicht gespeichert werden, und idealerweise möchten Sie nachweisen, dass er überhaupt nicht gespeichert wird (z. B. nur im Speicher aufbewahrt wird, während die Autorisierung durchgeführt wird)

In Bezug auf Zertifikate/Schlüssel - Sie könnten nur einen Schlüssel zur Verschlüsselung aller kartenbezogenen Daten verwenden. Es empfiehlt sich, Schlüssel nicht für mehrere Zwecke zu verwenden. Wenn Sie also andere (nicht kartenbezogene) Daten verschlüsselt haben, verwenden Sie dafür einen separaten Schlüssel.

Der schwierigste Teil ist einer, den Sie nicht wirklich im Detail erwähnt haben - und das ist die Schlüsselverwaltung. Um die PCI-Anforderungen zu erfüllen, muss der Schlüssel auf einer separaten physischen Box zur Datenbank gespeichert werden, und Sie müssen die Möglichkeit haben, den Schlüssel mindestens einmal jährlich zu ändern. SQL 2008 unterstützt dies mit Extensible Key Management (EKM)

All diese Punkte besprechen Sie am besten mit einem unabhängigen QSA (Qualified Security Assessor), den Sie irgendwann unabhängig davon einbeziehen müssen, um die PCI-Konformität zu erfüllen. Ihr QSA kann Sie bei Fragen wie diesen anleiten, und letztendlich ist es sein/ihr Rat, den Sie befolgen sollten, um die Vorschriften einzuhalten.

Es ist erwähnenswert, dass die meisten Menschen schnell erkennen, wie schwer die PCI-Compliance sein kann, und versuchen, diese Belastung durch die Verwendung eines Zahlungs-Gateways eines Drittanbieters zu minimieren. Bei den meisten Zahlungsgateways können Sie die Autorisierung/Abrechnung durchführen und die Kartendaten auf ihren (bereits PCI-konformen) Servern speichern. Sie müssen dann nur eine TokenId speichern, die auf diese Zahlungsdetails verweist, falls Sie weitere Belastungen/Rückerstattungen auf dieser Karte vornehmen müssen.

Viel Glück so oder so!