NSURLCache и защита данных

Я пытаюсь защитить конфиденциальные данные, хранящиеся в NSURLCache. Файлы моего приложения и файлы sqlite Core Data имеют значение NSFileProtectionComplete. Однако я не могу изменить уровень защиты данных файлов NSURLCache на что-либо, кроме NSFileProtectionCompleteUntilFirstUserAuthentication. Это оставляет любые конфиденциальные данные в кеше открытыми, когда устройство заблокировано.

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

Есть ли у кого-нибудь предложения по защите данных NSURLCache?


person PPierson    schedule 13.01.2015    source источник
comment
При удаче? Столкнулся с той же проблемой...   -  person sibidiba    schedule 04.05.2015
comment
Я ответил на свой вопрос своим решением.   -  person PPierson    schedule 04.05.2015


Ответы (1)


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

person PPierson    schedule 04.05.2015
comment
Я столкнулся с той же проблемой. Можете ли вы поделиться кодом? Спасибо! - person Oritm; 11.10.2018