Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zgodność z SQL Server 2008 + PCI? Dotyczy PCI, a także kluczy symetrycznych!

Jeśli przechowujesz PAN (numer karty), to bezwzględnie musi być zaszyfrowany.

Jeśli przechowujesz imię i nazwisko posiadacza karty, datę ważności, numer wydania (i można je połączyć z PAN), to powinni być zaszyfrowane, ale (w moim rozumieniu) nie jest to absolutnie konieczne. PCI-DSS stwierdza tylko, że przynajmniej PAN musi być zaszyfrowany.

Kod CV2/AVS/CSC nie może być przechowywany po autoryzacji, a najlepiej byłoby udowodnić, że w ogóle nie jest przechowywany (np. - przechowywany tylko w pamięci podczas wykonywania autoryzacji)

Jeśli chodzi o certyfikaty/klucze - wystarczy użyć jednego klucza do szyfrowania wszystkich danych związanych z kartą. Najlepszą praktyką jest nieużywanie kluczy do wielu celów, więc jeśli masz inne (niezwiązane z kartą) dane, które są zaszyfrowane, użyj do tego oddzielnego klucza.

Najtrudniejszą częścią jest ta, o której tak naprawdę nie wspomniałeś szczegółowo - i to jest zarządzanie kluczami. Aby spełnić wymagania PCI, klucz musi być przechowywany w osobnym fizycznym pudełku do bazy danych i potrzebna jest możliwość zmiany klucza co najmniej raz w roku. SQL 2008 obsługuje to za pomocą Extensible Key Management (EKM)

Wszystkie te punkty najlepiej omówić z niezależnym QSA (Qualified Security Assessor), z którym w pewnym momencie będziesz musiał się zaangażować, aby spełnić wymagania PCI. Twój QSA będzie w stanie udzielić Ci odpowiedzi na takie pytania, a ostatecznie jego rady, których powinieneś przestrzegać, aby spełnić wymagania.

Warto wspomnieć, że większość ludzi wkrótce zdaje sobie sprawę, jak dużym obciążeniem może być zgodność z PCI, i starają się zminimalizować to obciążenie, korzystając z bramki płatniczej innej firmy. Większość bramek płatniczych umożliwia przeprowadzanie autoryzacji/rozliczenia i przechowywanie danych karty na ich (już zgodnych z PCI) serwerach. Następnie wystarczy przechowywać identyfikator TokenId, który odwołuje się do tych szczegółów płatności, jeśli konieczne będzie wykonanie dalszych opłat/zwrotów na tej karcie.

Powodzenia!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Generuj SQL Utwórz skrypty dla istniejących tabel za pomocą Query

  2. Upuszczanie i odtwarzanie baz danych w Microsoft SQL Server

  3. Czy możliwe jest wykonanie pliku tekstowego z zapytania SQL?

  4. Funkcja a procedura składowana w SQL Server

  5. jak ustawić swoje dane poziomo