Очистка записей базы данных - PullRequest
3 голосов
/ 29 ноября 2010

Я имею дело с необходимостью хранить некоторые данные платежной карты.Чтобы соответствовать требованиям PCI DSS, мы должны очистить данные с дисков, не только удалив файл из системы хранения, но и записав байты со случайной последовательностью данных, чтобы затруднить восстановление данных.

Я хотел бы иметь возможность использовать базу данных для своих нужд хранения (для повышения параллелизма и упрощения запросов), однако я не могу найти способ очистки отдельных записей таким способом.

Есть ли какие-либо известные методы для достижения этой цели?

1 Ответ

2 голосов
/ 29 ноября 2010

Насколько мне известно о PCI DSS, безопасное стирание требуется только для файлов, хранящихся в файловой системе. СУБД не обязательно отображает данные в файловую систему предсказуемым образом. То, что вы можете сделать (если вы все еще хотите «безопасно стереть информацию»), это

  1. Обновить все записи, которые вы хотите удалить
  2. Удалить данные

Допустим, вы хотите удалить все записи, где PAN равен 4444441234567890. Вы можете написать следующие операторы:

update card_data set PAN='0000000000000000' where PAN = '4444441234567890';
а затем
delete card_data where PAN='0000000000000000';

Кроме того, вам может быть интересно узнать о Прозрачном шифровании данных , поддерживаемом как Oracle, так и SQL Server.

...