-
Notifications
You must be signed in to change notification settings - Fork 71
Description
One of the pluggable components in the Parsec service is the KeyInfoManager, for which the only incarnation that exists today is the OnDiskKeyInfoManager, which stores key info mappings on the OS filesystem.
Confidentiality, availability and integrity of these mappings are important for a healthy Parsec deployment. Confidentiality is of particular importance in multi-tenant scenarios, where the key info does not only help us map high-level key names to back-end identities, but it also forms part of the access control subsystem to ensure that tenants cannot be given access to the "wrong" keys.
On-disk mappings are protected by OS filesystem permissions - this is part of the documented Parsec threat model.
An improved security posture could be obtained by storing these data outside of the OS. On a platform that supports secure enclaves or partitions, it may be possible to migrate key mappings into a secure storage service where they are not visible to the OS while at rest.
What would this look like? Would it depend on some underlying blob storage/retrieval primitives? And, if so, could those same primitives also form part of Parsec's API for direct client use as well? (Based on PSA Storage, for instance)?