#mysql #database #security #data-protection #anonymize
#mysql #База данных #Безопасность #защита данных #анонимизация
Вопрос:
Скоро мы выпускаем частную бета-версию веб-сайта для внутренней экономики.
Веб-сайт, конечно, собирает информацию о личном финансовом положении пользователя (идентифицируемом только по электронной почте): зарплата, арендная плата, счета, ипотека и т. Д. Все это действительно конфиденциальная информация и не должна быть доступна никому — даже нам, техническим специалистам.
Каковы наилучшие методы хранения данных в нечитаемом виде? Конечно, пароли участников уже хэшируются в БД.
Я думаю о том, чтобы зашифровать все данные, используя какой-то ключ. Но опять же, приложению необходим доступ к этому ключу. И я не хочу хранить его в БД. Если предоставлено пользователем, я думаю, я мог бы сохранить его в сеансе, чтобы расшифровать каждый полученный результат БД. Но как насчет накладных расходов?
Пожалуйста, у кого-нибудь есть рекомендации?
Ответ №1:
Во-первых, отделите личную информацию от статистики. Это позволяет выполнять вычисления, не подвергая риску конфиденциальные данные. Далее, строго зашифруйте личную информацию и храните ключи в защищенной системе с ограниченным доступом. Не используйте один и тот же ключ для всех данных, но количество используемых вами ключей — это дизайнерское решение, которое зависит от вас. Большее количество ключей будет более безопасным, но сложнее в обращении.
Могут существовать существующие стандарты, которые применяются к вашим данным, в зависимости от того, где вы находитесь в мире и с какими отраслями вы работаете. Найдите их и следуйте им.
Ответ №2:
Любой, у кого есть доступ на уровне администратора (например, ваши технические специалисты), может получить доступ к любым ключам дешифрования, хранящимся на компьютере. Что касается сеанса, любой человек уровня администратора может делать дампы памяти, чтобы извлекать ключи из сеанса.
Дело в том, что единственное «решение» такого рода — это отличное ведение журнала доступа к компьютеру в сочетании с надежным юридическим документом, подтверждающим, что за ними следят, и вы будете преследовать в судебном порядке. Также вы должны проводить ежегодные проверки ваших технических специалистов. Далее, количество людей с таким типом доступа должно быть крайне ограничено. Как генеральный директор, который принимает активное участие в нашем процессе разработки, даже у меня нет доступа к нашим производственным системам.
Несмотря на это, вы все равно должны зашифровать базу данных, особенно данные PII. В зависимости от вашей отрасли на вас могут подать в суд, если вы этого не сделаете, и не обращайте внимания на плохую прессу, если кто-то вытащит дамп данных.
Ответ №3:
Как насчет второй ключевой фразы, защищенной ключевой фразой пользователя? Когда он войдет в систему, его вторая будет расшифрована и сохранена.
Комментарии:
1. Только что видел сообщение ObscureRobots. Это намного лучше, чем у меня 😉