En esta página, se describe la función de borrar de forma no definitiva que proporciona una protección predeterminada a nivel de bucket para tus datos contra la eliminación accidental o maliciosa, ya que conserva todos los objetos borrados o reemplazados recientemente durante un período específico.
Los objetos almacenados en buckets de Cloud Storage son inmutables. Si reemplazas o cambias los datos de un objeto, Cloud Storage borra la versión anterior y la reemplaza por una nueva. La función borrar de forma no definitiva retiene todos estos objetos borrados, ya sea desde un comando de eliminación o debido a un reemplazo, lo que le permite capturar todos los cambios realizados en los datos del bucket durante el período de retención configurado.
Cuando borras un objeto de tu bucket con la función borrar de forma no definitiva habilitada, Cloud Storage realiza las siguientes acciones:
- Mueve el objeto borrado a un estado borrado de forma no definitiva. En este estado, el objeto es invisible para el bucket, excepto cuando enumeras o restableces explícitamente los objetos borrados de forma no definitiva.
- Retiene este objeto borrado de forma no definitiva durante el período de retención configurado. Durante este período, no puedes modificar este objeto de ninguna manera, incluso por funciones como, por ejemplo, las reglas del ciclo de vida de los objetos o Autoclass.
- Protege los metadatos de la versión más reciente (número de generación) del objeto. Estos metadatos pueden ser los metadatos de la última versión eliminada de un objeto o el objeto activo, si existe.
- Borra el objeto de forma permanente del bucket después de que finaliza el período de retención de la función borrar de forma no definitiva.
Política de eliminación no definitiva
Puedes agregar una política de eliminación no definitiva a un bucket nuevo o existente. Agregar la política de eliminación no definitiva habilita un período de retención predeterminado de siete días.
- Después de agregar una política de borrar de forma no definitiva a un bucket, Cloud Storage conserva cualquier objeto que borres del bucket durante el período de retención de la función borrar de forma no definitiva especificado.
Puedes actualizar la política de eliminación no definitiva de un bucket si cambias la duración de la retención.
- El nuevo período de retención de borrar de forma no definitiva solo se aplica a los objetos que se borran después de que el cambio entra en vigor.
El período de retención actualizado no se aplica a los objetos borrados de forma no definitiva existentes. Los objetos borrados de forma no definitiva existentes se conservan durante el tiempo que estaba vigente cuando se borraron.
Por ejemplo, tienes dos objetos en tu bucket: el Objeto A y el Objeto B. Habilitas una política de eliminación no definitiva en tu bucket con un período de retención predeterminado de siete días. Borra el Objeto A. Después de un par de días, cambias el período de retención de la función borrar de forma no definitiva a diez días y borras el Objeto B. Cloud Storage continúa conservando el Objeto A hasta que se haya protegido durante siete días, mientras que el Objeto B se conserva durante diez días.
Puedes quitar la política de eliminación no definitiva del bucket.
- Cloud Storage retiene cualquier objeto borrado de forma no definitiva en el bucket durante el tiempo especificado en la política de eliminación no definitiva antes de que se quite.
- Cloud Storage quita de forma permanente cualquier objeto que borres después de que se inhabilite la política de eliminación no definitiva.
Borra de forma no definitiva la duración de la retención
Cuando creas un bucket de Cloud Storage, la función de borrar de forma no definitiva está habilitada de forma predeterminada con un período de retención de siete días. Durante el período de retención, puedes restablecer los objetos borrados, pero después de que finaliza el período, Cloud Storage borra los objetos de forma permanente. Si actualizas la configuración del bucket, puedes aumentar la duración de la retención a 90 días o inhabilitarla si estableces la duración de la retención en 0. La cantidad mínima de días con la función borrar de forma no definitiva habilitada es de siete días.
La duración de la retención de la función borrar de forma no definitiva se mide en segundos; sin embargo, algunas herramientas, como la consola de Google Cloud y la Google Cloud CLI, te permiten configurar y ver la duración de la retención con otras unidades de tiempo para mayor comodidad. En esos casos, se aplican las siguientes conversiones:
- Un día son 86,400 segundos.
- Un mes son 31 días o 2,678,400 segundos.
En la CLI de gsutil, cuando especificas un período de retención, debes especificar un número entero y una unidad, en los que la unidad puede ser s
, d
o m
para indicar los segundos, días o meses, respectivamente. Por ejemplo, 7d43200s
establece un período de retención de 7 días y 43,200 segundos (siete días y medio).
Puedes establecer una duración máxima de retención de 7,776,000 segundos (90 días) o una duración mínima de retención es de 604,800 segundos (7 días). Cuando usas las API de REST, también puedes establecer la duración de la retención en un valor de 0, lo que inhabilita la política de eliminación no definitiva.
Restablece objetos y buckets
Cuando restableces un objeto borrado de forma no definitiva, Cloud Storage crea una copia del objeto borrado de forma no definitiva en el mismo bucket del que se borró el objeto. Los metadatos del objeto restablecido son los mismos que los metadatos del objeto borrado en el momento de la eliminación. Al final del período de retención de la función borrar de forma no definitiva, Cloud Storage borra de forma permanente el objeto.
Puedes restablecer los objetos borrados de forma no definitiva antes de que finalice el período de retención de la función borrar de forma no definitiva.
- Para que el restablecimiento se realice de forma correcta, debes iniciarlo lo más pronto posible así poder completarlo dentro del período de retención de la función borrar de forma no definitiva, ya que los objetos se borran de forma permanente después de ese período.
- Puedes restablecer los objetos borrados de forma no definitiva de manera síncrona si especificas una lista de objetos, o puedes crear una operación de larga duración para restablecer de forma masiva los objetos borrados entre dos marcas de tiempo.
- Cloud Storage siempre restablece los objetos en el mismo bucket desde el que se borraron en un principio.
Cuando la función borrar de forma no definitiva está habilitada en tu bucket, no puedes borrar de forma permanente un objeto activo o uno borrado de forma no definitiva. Cuando borras un objeto activo, se borra de forma no definitiva. El objeto borrado de forma no definitiva se borra de forma permanente después de que finaliza el período de retención de la función borrar de forma no definitiva.
Si borras tu proyecto, Cloud Storage borra de forma permanente todos los buckets y objetos dentro de ese proyecto. En este caso, no puedes restablecer objetos ni buckets mediante la función de borrar de forma no definitiva. Por lo tanto, es importante tomar medidas para limitar el acceso a las eliminaciones a nivel de proyecto, como colocar una retención en los proyectos o crear una copia de seguridad de los datos fundamentales de la empresa en buckets en un proyecto diferente.
Cuando restableces una versión de objeto borrado de forma no definitiva, Cloud Storage restablece la copia del objeto borrado de forma no definitiva en una versión publicada. Si ya existe una versión publicada, la copia de la versión borrada de forma no definitiva reemplaza a la publicada, y la versión publicada preexistente se borra de forma no definitiva. En este caso, tu bucket contiene los siguientes objetos:
- El objeto activo reemplazado que está en estado borrado de forma no definitiva
- Dos copias del objeto que se borró de forma no definitiva: una copia publicada y otra copia aún no borrada de forma no definitiva
Todas estas copias de objetos generan cargos de almacenamiento hasta que los objetos borrados de forma no definitiva se borran de forma permanente después de que finalice el período de retención.
Cloud Storage también copia los metadatos de los objetos borrados de forma no definitiva restablecidos cuando se reemplaza el objeto activo. Esto significa que los metadatos y la configuración de seguridad a nivel del objeto, como la clase de almacenamiento, se establecen en el último estado de esa versión específica del objeto en el restablecimiento.
Los objetos borrados de forma no definitiva no se borran de forma permanente luego de la eliminación del bucket. Sin embargo, se debe restablecer la versión correcta de bucket antes de que sea posible restablecer los objetos borrados de forma no definitiva que contiene. Para restablecer un bucket borrado de forma no definitiva, comunícate con el equipo de asistencia de Google Cloud.
Consideraciones con otras funciones
la función borrar de forma no definitiva es compatible con todas las funciones de Cloud Storage. Cuando esta función está habilitada, tiene las siguientes interacciones con otras funciones de Cloud Storage:
Administración del ciclo de vida de los objetos
Las reglas de Administración del ciclo de vida de los objetos solo actúan en objetos activos y no actuales, y no pueden afectar a los objetos borrados de forma no definitiva. Cualquier objeto que borre la administración del ciclo de vida del objeto se borra de forma no definitiva en lugar de borrarse de forma permanente.
Control de versiones de objetos
La función borrar de forma no definitiva proporciona una capa adicional de protección sobre el Control de versiones de objetos, ya que los objetos no actuales se borran de forma no definitiva en lugar de borrarse de forma permanente.
-
Las cargas multipartes están protegidas por la función borrar de forma no definitiva una vez que se finalizan los objetos. La función borrar de forma no definitiva no protege los fragmentos de carga de varias partes que se borran antes de que se finalicen los objetos.
-
Autoclass no tiene acceso a objetos borrados de forma no definitiva, por lo que sus tarifas de administración no se evalúan para objetos borrados de forma no definitiva. Después de que un objeto se borra de forma no definitiva en un bucket habilitado para Autoclass, la clase de almacenamiento de ese objeto se inmoviliza hasta que finalice el período de retención de la función borrar de forma no definitiva. El restablecimiento de un objeto borrado de forma no definitiva lo restablece en la clase Standard Storage de la misma manera que la lectura de un objeto frío en un bucket de Autoclass también restablece la clase de almacenamiento a Standard Storage.
Funciones de bloqueo del bucket y bloqueo de retención de objetos
Cuando la función borrar de forma no definitiva está habilitada mientras se usa una o ambas funciones, no puedes borrar objetos activos durante el tiempo especificado en la política de retención de bloqueo de buckets y bloqueo de objetos. Después de que cualquiera de estas retenciones de servicio se venzan en los objetos activos, puedes borrarlas. Luego, el objeto pasa al estado borrado de forma no definitiva y se retiene durante el período de retención de borrar de forma no definitiva.
-
Puedes establecer restricciones de políticas en la función borrar de forma no definitiva en las políticas de la organización. Esto te obliga a establecer una duración específica de retención de eliminación no definitiva cuando creas buckets nuevos o actualizas buckets existentes.
Cuando restableces una versión de un objeto borrada de forma no definitiva, Pub/Sub activa un evento OBJECT_FINALIZE en cada restablecimiento de objetos exitoso.
La eliminación no definitiva no puede restablecer las políticas de IAM en las carpetas administradas. Si borras de forma no definitiva un objeto y borras una carpeta administrada que otorga políticas de IAM para el objeto, es posible que debas volver a crear esas políticas de IAM antes de tener los permisos necesarios para restablecer el objeto borrado de forma no definitiva.
¿Qué sigue?
- Aprende a usar borrar de forma no definitiva.
- Obtén más información sobre cómo usar objetos borrados de forma no definitiva.