Please add a configurable maximum cache lifetime, preferably based on the time since a file was last accessed.
Suggested values could range from 5 minutes to several months, with “unlimited” preserving the current behaviour.
The cache-size and cache-lifetime limits should work independently:
-
files may be evicted when the cache-size limit is reached;
-
files should also be evicted when their maximum lifetime expires, even if sufficient cache space remains.
SeaDrive currently removes cached files primarily when the configured cache-size limit is reached. As a result, previously opened files may remain readable in the local cache indefinitely.
This means that someone who gains access to the local user account, the active system or the local storage may be able to inspect and open files that were previously accessed from an (encrypted) library.
A short configurable cache lifetime would substantially reduce the period during which such plaintext cached copies remain available.
Ideally, SeaDrive should additionally offer one or both of the following behaviours for encrypted libraries:
-
immediately remove all clean cached file contents belonging to an encrypted library when that library is unmounted;
-
store cached contents from encrypted libraries in an encrypted local cache whose key becomes unavailable when the library is unmounted.
These additional protections would be preferable from a security perspective, but a configurable maximum cache lifetime is the bare minimum and would already be a significant improvement.
Use cases
This feature would be useful for:
-
systems containing confidential business documents;
-
shared workstations;
-
laptops that may be lost or stolen while logged in;
-
encrypted libraries containing sensitive information;
-
environments where local data retention must be limited;
-
users who want SeaDrive to behave as an on-demand drive rather than as a persistent offline cache;
-
systems with limited local storage.