Практическая/прикладная безопасность приложений
Вопрос
Хорошо, вот моя проблема.Я работаю над игровым движком, который со временем станет многослойным.этот движок позволяет писать игры либо на языке .Net, либо на Lua (встроенный механизм сценариев).Однако в целях безопасности я бы хотел запретить людям просматривать эти файлы и, конечно же, запретить им редактировать их.Моим решением было создать виртуальную файловую систему с зашифрованными заголовками.Таким образом, будет сложно обнаружить содержимое файлов данных игры, а если кто-то это сделает, он не сможет редактировать их без ключа, иначе они будут недействительны.
Другая проблема текущей игры заключается в том, что она подключается к данным SQL для получения определенных данных. Это означает, что строка подключения к БД и пароль хранятся внутри приложения.
Однако как быть с хранением паролей внутри приложения .Net?Я точно знаю, что их можно декомпилировать, и нет смысла хранить секретные ключи в читаемом файле конфигурации, так как же это делают большинство профессионалов?
Решение
Обычно клиентские приложения не подключаются к базе данных напрямую.Вместо этого подключайтесь к серверу, который обрабатывает удаленные вызовы от имени приложения.В таком случае единственное, чему нужен пароль к базе данных, — это сервер.
В современном мире .Net сервер обычно создается с использованием WCF