Я разрабатываю локальное приложение, которое отображает чувствительные изображения с безопасного локального сервера, и мне нужно, чтобы эти изображения были доступны только для просмотра в моем веб-приложении - поэтому я не хочу, чтобы они хранились на диске (через кеш или что-то в этом роде).Остановить загрузку кеширования изображений на диск
Вот мои заголовки ответа (nodejs курьерский):
res.header("Cache-Control", "no-cache, no-store, must-revalidate");
res.header("Pragma", "no-cache");
res.header("Expires", "0");
res.send(image);
Вот мой AngularJS код, чтобы получить изображение и сделать его. Я использую AJAX, потому что я аутентифицирую пользователя через JWT, поэтому мне нужно включить заголовок auth.
$http.get(src, {
responseType: 'arraybuffer'
})
.then(function(res){
var headers = res.headers();
var blob = new Blob([res.data], {
type: headers['content-type']
});
image.src = $window.URL.createObjectURL(blob);
});
Кажется, что это работает, но я смущен тем, что показывают инструменты разработчика Chrome и Firefox. Я должен быть на 100% уверен, что эти изображения не будут сохранены на диске.
Но я вижу:
Status Code: 200 OK (from cache)
Я не могу увидеть изображение в хроме: // вкладку кэша, но меня беспокоит, что я вижу (из кэша) в сетевой монитор.
В моем браузере Firefox я вижу URL-адрес изображения, но в столбце устройства указано «память». Может ли любой, кто смотрит на память, просматривать его через определенный промежуток времени, особенно после выхода пользователя из системы?
Так что я думаю, мой вопрос заключается в то, что эти два браузер делает, когда я создаю блоб? И может ли кто-нибудь получить доступ к этим изображениям за пределами браузера? Что он делает на мобильном/планшетном устройстве?
Если бы я должен был передать изображение с использованием строки base64, было бы безопаснее или хуже с точки зрения конфиденциальности и безопасности?
Помимо кэширования ... вы знаете, что пользователи могут просто сохранить изображение на диск, если они действительно этого хотят? – deceze
Пользователь может сделать снимок экрана с документа. – guest271314
_ «Если бы я должен был передать изображение с использованием строки base64, это было бы безопаснее или хуже с точки зрения конфиденциальности и безопасности?» _ - это было бы то же самое. – CBroe