Каков лучший и самый безопасный способ сохранить пользовательские адреса электронной почты в базе данных? [закрытый]

AFAIK OpenShift также регистрирует журналы контейнеров в формате /var/lib/docker/containers//*-json.log, см. Просмотр доступных журналов контейнеров для получения более подробной информации. Если вы не можете найти в каталоге, ваш docker log driver может быть настроен как journald, его можно проверить из /etc/sysconfig/docker.

OPTIONS=' --selinux-enabled --log-driver=journald --signature-verification=False'

Затем вы должны изменить journald на json-file для входа в /var/lib/docker/containers//*-json.log.

OPTIONS=' --selinux-enabled --log-driver=json-file --signature-verification=False'

вам нужно перезапустить docker.service для вступления в силу.

21
задан User 20 April 2009 в 08:04
поделиться

8 ответов

Если вам понадобится адрес электронной почты в будущем, вам придется хранить его в обычном формате. текст.

Вы могли бы их зашифровать, конечно, однако, в этом случае это фактически безопасность через неизвестность. По сути, если периметр вашего приложения защищен, ваши данные в нем могут быть в виде простого текста. Шифрование здесь усложняет вашу работу с данными, но на самом деле не мешает злоумышленнику получить ваши необработанные данные.

Как вы говорите, если он преодолеет вашу защиту периметра, он, скорее всего, легко получит ваш ключ дешифрования для расшифровки. данные электронной почты. Шифрование может немного замедлить действия определенного злоумышленника, но не повысит безопасность ваших данных.

Лучший сценарий - хешировать адрес электронной почты (с солью!) И сохранять его.

13
ответ дан 29 November 2019 в 20:21
поделиться

Я думаю, что когда люди могут зайти в вашу базу данных, вы все равно облажаетесь:)

Это не делает много смысла просто зашифровывать ваши адреса электронной почты. Помимо того, что в вашей базе данных будет много другой информации, которую вы не хотели бы собирать, ключ дешифрования действительно будет в пределах досягаемости, в то время как ваша база данных открыта.

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

И почему адреса электронной почты так важны? Большинство людей в любом случае получат спам, иначе их адреса электронной почты будут доступны где-то в Интернете.

2
ответ дан 29 November 2019 в 20:21
поделиться

Надеюсь, этот ответ также ответит на ваш вопрос.

Стоит ли шифровать адреса электронной почты в базе данных?

Короче говоря, нет, не стоит шифровать адреса электронной почты пользователей. Вы правы, полагая, что компрометация базы данных может привести к тому, что кто-то также получит доступ к ключам, необходимым для взлома вашего шифрования.

13
ответ дан 29 November 2019 в 20:21
поделиться

В целом я согласен с другими, утверждающими, что это не стоит усилий. Однако я не согласен с тем, что любой, кто имеет доступ к вашей базе данных, вероятно, также может получить ваши ключи. Это, конечно, не относится к SQL Injection и может быть неверным для резервных копий, которые каким-то образом потеряны или о которых забыли. И я считаю, что адрес электронной почты - это личная деталь, поэтому меня не волнует спам, а личные последствия раскрытия адресов.

Конечно, если вы боитесь SQL-инъекции, вы должны убедиться, что такая инъекция запрещена. И резервные копии должны быть зашифрованы сами.

Тем не менее, в некоторых онлайн-сообществах участники могут определенно не хотеть, чтобы другие знали, что они являются участниками (например, в вопросах психического здоровья, финансовой помощи, медицинских и сексуальных консультаций, развлечений для взрослых, политики и т. Д.). В таких случаях хранение как можно меньшего количества личных данных и шифрование тех, которые требуются (обратите внимание, что шифрование на уровне базы данных не препятствует отображению данных с помощью SQL Injection), может быть не такой уж плохой идеей. Еще раз: относитесь к адресу электронной почты как к личной информации.

Для вашего развлекательного сайта это, вероятно, не так, и вам следует сосредоточиться на запрете SELECT * FROM с помощью SQL-инъекции и обеспечении того, чтобы посетители не могли каким-либо образом получить доступ к чьему-либо личному профилю или информации о заказе, изменив URL-адрес.

7
ответ дан 29 November 2019 в 20:21
поделиться

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

1
ответ дан 29 November 2019 в 20:21
поделиться

Я не шифрую электронные письма пользователей. Дело в том, чтобы защитить базу данных; ключи доступны в любом случае, если вы действительно хотите использовать электронные письма после того, как они сохранены.

Тем не менее, проверьте адрес на предмет корректности и возможного внедрения SQL-кода.

1
ответ дан 29 November 2019 в 20:21
поделиться

Если сервер приложений и база данных находятся на разных серверах, это обычно повышает безопасность для всей или части базы данных. Зашифровано.

Даже если они находятся на одной машине, хакер может не выяснить, где хранится ваш пароль (хотя я бы на это не полагался).

Как правило, я бы не стал шифровать электронные письма на уровне приложений, вместо этого полагаясь на шифрование всей базы данных, предлагаемое большинством корпоративных баз данных.

Конечно, если вы используете что-то вроде MySQL, то у вас нет выбора, кроме как сделать это на уровне приложения.

Обычно я говорю своим клиентам, что не стоит беспокоиться о шифровании базы данных, однако, если у вас более строгие требования к конфиденциальности, возможно, имеет смысл это сделать.

1
ответ дан 29 November 2019 в 20:21
поделиться

Шифрование содержимого базы данных всегда сложно. Очевидно, что контент бесполезен, если он не может быть зашифрован, и если это должно произойти без вмешательства человека, тогда вы храните как шифротекст, так и ключ где-то. Если это где-то находится на той же машине, то можно задаться вопросом, почему вы вообще обеспокоены.

Ну, есть несколько причин, почему вы можете захотеть это сделать. Во-первых, вы обязаны сделать это из-за какой-то политики компании. Другая причина заключается в том, что, возможно, ваша база данных находится в более агрессивной среде, чем та машина, которая обращается к ней.

В целом, шифрование содержимого базы данных не принесет вам никаких наград, но если вы можете это оправдать, то у вас явно есть хоть какая-то мотивация для этого.

1
ответ дан 29 November 2019 в 20:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: