В прошлом многие приложения хранили временные файлы в каталоге Temp / Tmp; либо для Системы, либо для конкретного пользователя. Однако в последнее время у нас было много пользователей на предприятиях, где использование каталогов Temp заблокировано из-за инструментов сканирования на вирусы или инструментов и политик Host Intrusion Prevention, не разрешающих использование этих местоположений. Я думаю, здесь есть опасения, что несколько приложений могут читать и писать из этого места, и поэтому мошенническое приложение может негативно повлиять на другое приложение или его временно сохраненные данные. Это кажется правильным и более безопасным способом работы, поэтому я не могу просить людей позволить себе повышенный риск.
Тогда мой вопрос: как и где (физически) безопасно хранить пользовательские, специфичные для приложения, но временные файлы.
Следует ли ожидать, что каждое приложение будет управлять этим самостоятельно, или есть какая-то новая функция временного хранилища данных в изолированной программной среде приложения и пользователя, о которой я не знаю?
В частности, я сосредоточен на использовании .NET 4.0+, C # и Windows 7+, но этот вопрос должен быть применим и к другим языкам, используемым в Windows.
Похожие, но более старые и недостаточно конкретные темы
- Рекомендации по C #: написание временных файлов для скачать: поместить в папку среды приложения или временную папку
- Сканеры вирусов блокировка и удаление временных файлов - лучший способ с ними справиться?
- Сведения о временном каталоге Windows (Java)
- https://stackoverflow.com/questions/30547113/secure-temp-file-creation-within-temp-directory
Ответ 1 о шифровании содержимого и имени файла не кажется оптимальным решением и все равно будет заблокирован системой предотвращения вторжений хоста.