2015-01-13 10 views
7

Sto cercando di proteggere i dati sensibili memorizzati in NSURLCache. I file della mia app e i file sqlite di Core Data sono impostati su NSFileProtectionComplete. Tuttavia, non riesco a modificare il livello di protezione dei dati dei file NSURLCache in qualcosa di diverso da NSFileProtectionCompleteUntilFirstUserAuthentication. Ciò lascia eventuali dati sensibili nella cache esposta quando il dispositivo è bloccato.NSURLCache e Data Protection

Ho bisogno di avere le risposte in cache in modo che le richieste ripetute restituiscano 304 risposte per evitare che i dati vengano rielaborati più volte quando non è necessario farlo. Inoltre, ho bisogno che la cache sia protetta a riposo quando il dispositivo è bloccato.

Qualcuno ha qualche suggerimento per proteggere i dati NSURLCache?

+0

Qualche fortuna? Di fronte allo stesso problema ... – sibidiba

+1

Ho risposto alla mia stessa domanda con la mia soluzione. – PPierson

risposta

3

Il valore predefinito NSURLCache non supporta la modifica del livello di protezione del relativo archivio. Ho risolto il problema creando una sottoclasse personalizzata NSURLCache che memorizza le risposte URL in un database SQLite personalizzato con protezione file impostata su NSFileProtectionComplete. Questa sembra essere l'unica soluzione accanto alla disattivazione della memorizzazione nella cache degli URL.