Configuración del control de versiones para un bucket
Funciones
Esta operación restaura un objeto que se sobrescribe o elimina por error. El control de versiones se puede usar para guardar, consultar y restaurar objetos de diferentes versiones. El control de versiones le permite recuperar fácilmente los datos perdidos debido a errores de funcionamiento o fallas del programa. El control de versiones también se puede utilizar para retener y archivar datos.
De forma predeterminada, el control de versiones está deshabilitado para un bucket.
Una vez que WORM está habilitado para un bucket, OBS activa automáticamente el control de versiones para el bucket y el control de versiones no se puede suspender para ese bucket.
Puede realizar esta operación para habilitar o suspender el control de versiones de un bucket.
Después de habilitar el control de versiones para un bucket:
- OBS crea un ID de versión único para cada objeto cargado. Los objetos Namesake no se sobrescriben y se distinguen por sus propios ID de versión.
- Puede descargar objetos especificando ID de versión. Por defecto, se descarga el último objeto si no se especifica el ID de la versión.
- Los objetos se pueden eliminar por ID de versión. Si se elimina un objeto sin ningún identificador de versión especificado, el objeto solo se adjunta con un marcador de eliminación y un identificador de versión único, pero no se elimina físicamente.
- Los objetos más recientes de un bucket se devuelven por defecto después de una solicitud GET. También puede enviar una solicitud para obtener los objetos de un bucket con todos los ID de versión.
- Excepto los marcadores de eliminación y los metadatos de objetos, se cobra el espacio de almacenamiento ocupado por objetos con todos los ID de versión.
Después de que el control de versiones se suspenda para un bucket:
- Los objetos existentes con ID de versión no se ven afectados.
- El sistema crea el ID de versión null para un objeto cargado y el objeto se sobrescribirá después de cargar uno con su nombre.
- Puede descargar objetos especificando ID de versión. Por defecto, se descarga el último objeto si no se especifica el ID de la versión.
- Los objetos se pueden eliminar por ID de versión. Si se elimina un objeto sin ningún identificador de versión especificado, el objeto se adjunta con un marcador de eliminación cuyo identificador de versión es null. El objeto con el identificador de versión null se elimina físicamente.
- Excepto los marcadores de eliminación y los metadatos de objetos, se cobra el espacio de almacenamiento ocupado por objetos con todos los IDde versión.
Solo el propietario del bucket puede establecer el control de versiones para el bucket.
Sintaxis de solicitud
1 2 3 4 5 6 7 8 |
PUT /?versioning HTTP/1.1 Host: bucketname.obs.region.myhuaweicloud.com Date: date Authorization: authorization Content-Length: length <VersioningConfiguration> <Status>status</Status> </VersioningConfiguration> |
Parámetros de solicitud
Esta solicitud no contiene parámetros de mensaje.
Encabezados de solicitud
Esta solicitud utiliza encabezados comunes. Para más detalles, consulte Tabla 3.
Elementos de solicitud
Esta solicitud contiene elementos para configurar el control de versiones del bucket en formato XML. Tabla 1 enumera los elementos de solicitud.
Elemento |
Descripción |
Obligatorio |
---|---|---|
VersioningConfiguration |
Nodo raíz para configurar el control de versiones Nodo antepasado: ninguno |
Sí |
Status |
Estado de control de versiones del bucket Tipo: string Nodo antepasado: VersioningConfiguration Opciones de valor: Enabled, Suspended |
Sí |
Sintaxis de respuesta
1 2 3 4 |
HTTP/1.1 status_code Date: date Content-Length: length |
Encabezados de respuesta
La respuesta a la solicitud utiliza encabezados comunes. Para más detalles, consulte Tabla 1.
Elementos de respuesta
Esta respuesta no contiene elementos.
Respuestas de error
No se devuelven respuestas de error especiales. Para obtener más información sobre las respuestas de error, consulte Tabla 2.
Modelo de solicitud
1 2 3 4 5 6 7 8 9 10 11 |
PUT /?versioning HTTP/1.1 User-Agent: curl/7.29.0 Host: examplebucket.obs.region.myhuaweicloud.com Accept: */* Date: WED, 01 Jul 2015 03:14:18 GMT Authorization: OBS H4IPJX0TQTHTHEBQQCEC:sc2PM13Wlfcoc/YZLK0MwsI2Zpo= Content-Length: 89 <VersioningConfiguration> <Status>Enabled</Status> </VersioningConfiguration> |
Modelo de respuesta
1 2 3 4 5 6 |
HTTP/1.1 200 OK Server: OBS x-obs-request-id: BF26000001643672B973EEBC5FBBF909 x-obs-id-2: 32AAAQAAEAABSAAgAAEAABAAAQAAEAABCSH6rPRHjQCa62fcNpCCPs7+1Aq/hKzE Date: Date: WED, 01 Jul 2015 03:14:18 GMT Content-Length: 0 |