BACKGROUND

Aspects of the present invention generally relate to computing devices and, more particularly, to methods and systems for data governance in a dispersed storage network using bucket templates.

Computing devices communicate data, process data, and/or store data. Such computing devices range from wireless smart phones, laptops, tablets, personal computers (PCs), work stations, and video game devices, to data centers that support millions of web searches, stock trades, or online purchases every day. Computing devices typically include a central processing unit (CPU), a memory system, user input/output interfaces, peripheral device interfaces, and an interconnecting bus structure.

A computing device may effectively extend its CPU by using cloud computing to perform one or more computing functions (e.g., a service, an application, an algorithm, an arithmetic logic function, etc.) on behalf of the computing device. Cloud computing is a model of service delivery for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal management effort or interaction with a provider of the service.

Further, for large services, applications, and/or functions, cloud computing may be performed by multiple cloud computing resources in a distributed manner to improve the response time for completion of the service, application, and/or function. For example, Hadoop® (a registered trademark of The Apache Software Foundation) is an open source software framework that supports distributed applications enabling application execution by thousands of computers. Network storage is a computing capability that is typically offered by cloud computing providers. In particular, a user of cloud computing services may store and retrieve data on cloud infrastructure maintained by a cloud computing provider, such as a dispersed storage (DS) or dispersed storage network (DSN) system or memory. A computer may use cloud storage as part of its memory system. Cloud storage enables a user, via a computer, to store files, applications, etc., on an Internet storage system. The Internet storage system may include a redundant array of independent disks (RAID) system and/or a dispersed storage system (dispersed storage network memory) that uses an error correction scheme to encode data for storage.

A DSN memory may be used for storing unstructured data. In particular, in an example, a DSN memory may be used as an archive tier to hold data for an extended period of time. The basic layer of security is an access control policy that ensures that users interacting with the DSN memory have the proper credentials and are authorized to perform the set of operations they are performing on the system.

SUMMARY

In a first aspect of the invention, there is a method that includes: creating, by a computing device, a bucket template in a dispersed storage network (DSN) based on a first request, the bucket template including at least a first bucket parameter and at least one allowed value for the first bucket parameter; receiving, by the computing device, a second request to create a bucket in the DSN, the second request including at least a first value for the first bucket parameter; and creating, by the computing device, the bucket based on the first value for the first bucket parameter in the second request and the at least one allowed value for the first bucket parameter in the bucket template.

In another aspect of the invention, there is a computer program product that includes one or more computer readable storage media having program instructions collectively stored on the one or more computer readable storage media. The program instructions are executable to: create a bucket template in a dispersed storage network (DSN), the bucket template including at least a first bucket parameter and at least one allowed value for the first bucket parameter; receive a first request to create a bucket in the DSN; create the bucket in the DSN based on the first request and the bucket template; receive a second request to modify the bucket in the DSN, the second request including at least a first value for the first bucket parameter; and modify the bucket based on the first value for the first bucket parameter in the second request and the at least one allowed value for the first bucket parameter in the bucket template.

In another aspect of the invention, there is a system that includes: a processor, a computer readable memory, one or more computer readable storage media, and program instructions collectively stored on the one or more computer readable storage media. The program instructions executable to: create a bucket template in a dispersed storage network (DSN) based on a first request, the bucket template including at least a first bucket parameter and at least one allowed value for the first bucket parameter; receive a second request to create a bucket in the DSN, the second request including at least a first value for the first bucket parameter; and create the bucket based on the first value for the first bucket parameter in the second request and the at least one allowed value for the first bucket parameter in the bucket template.

