Что является более безопасным - проверка подлинности Windows или зашифрованные разделы конфигурации?
У меня недавно была эта дискуссия с коллегой.
Нам нужно защитить строки подключения, которые находятся в нашем .config
файлы (для соответствия SOX) и нашел два варианта:
- Шифровать разделы конфигурации строки подключения
- Использовать проверку подлинности Windows со строками подключения
Оба подхода упоминаются в этой статье на MSDN (Защита информации о соединении (ADO.NET)), но не ясно, какой из этих вариантов является более безопасным или какой подход является рекомендуемым.
Те, кто имеет опыт работы с одним или обоими из них, не могли бы вы рассказать, какой из них вы использовали и почему?
Чтобы уточнить мой вопрос - какой из двух вариантов является более безопасным и почему?
1 ответ
Это два разных решения одной и той же проблемы хранения учетных данных на диске:
Использование аутентификации Windows означает запуск процесса на стороне клиента в контексте учетной записи пользователя (предпочтительно службы) и предоставление ему возможности аутентификации с использованием NTLM, Kerberos, в соответствии с вашей средой. Обратите внимание, что использование аутентификации Windows означает, что две конечные точки работают в одинаковых или доверяющих доменах или имеют общую зеркальную учетную запись. Когда вы разрешаете аутентификацию Windows, вам не нужно хранить имя пользователя / пароль на диске, поскольку аутентификация обрабатывается с использованием токена процесса, назначенного процессу на стороне клиента.
Шифрование строки подключения означает, что вы примените шифрование к имени пользователя / паролю, хранящему его на диске. Поскольку для аутентификации с использованием этих учетных данных требуется, чтобы они хранились с использованием обратимого шифрования, а ключ для этого дешифрования также хранится в локальной системе, это означает, что учетные данные потенциально доступны любому, кто имеет доступ к компьютеру.
НТН