Multi-tenancy refers to the ability of a system to serve multiple administrative entities (called tenants) with a high degree of resource sharing among tenants (e.g. share CPU time, disk space, etc.).
Ideally a multi-tenant cloud storage system serves requests of multiple customers (tenants) in such a way that computing and storage resources are shared among such customers and this sharing of resources does not weaken system security.
In practice, multi-tenancy is a trade-off between security and costs: the wider the subset of resources shared (e.g., same physical machine vs. same OS), the more the cloud system can amortize costs and increase utilization.
Multi-tenancy can be achieved in several different ways. The simplest, most secure but also most expensive way is by leveraging hardware-level isolation; in this case, the requests of distinct tenants are handled by different hardware; a second approach is based on hardware and platform based virtualization techniques to create multiple virtual nodes and storage facilities (e.g. volumes, file systems, containers) for each tenant; process-level isolation hinges on the isolation provided by multi-user operating systems to separate resources belonging to different tenants; finally, within application-level isolation, the application is enhanced with access control enforcement to grant or deny access to otherwise shared resources.
The cloud services provided by TREDISEC should accommodate a multi-tenant environment. That is, an environment in which multiple users share the ownership of outsourced data, or are permitted to operate on the data without being actually owners. This requirement is more relevant to the use-cases pertaining to file sharing services
