Control de versiones de Object Storage
Descubra cómo utilizar el control de versiones de objetos para proteger los datos frente a la actualización o supresión accidental o maliciosa de objetos de Object Storage.
El control de versiones de objeto está activado en el nivel de cubo. El control de versiones indica a Object Storage que cree automáticamente una versión de objeto cada vez que se cargue un objeto nuevo, se sobrescriba un objeto existente o cuando se suprima un objeto. Puede activar el control de versiones de objeto en el momento de la creación del cubo o en un cubo existente que nunca antes tenía activado el control de versiones de objeto o que tenía suspendido el control de versiones de objeto.
Un cubo que esté activado para el control de versiones puede tener muchas versiones de un objeto. Siempre hay una versión más reciente del objeto y ninguna o más versionesanteriores.
Cada versión de objeto tiene un ID de versión único. Algunas tareas al utilizar la interfaz de línea de comandos (CLI) o la API, como la supresión o recuperación de una versión de objeto, requieren que incluya el ID de versión de objeto. Puede encontrar el ID de versión ejecutando los siguientes comandos u operaciones:
Consulte Listado de versiones de objeto en un cubo para obtener más información sobre cómo obtener el ID de versión de un objeto.
El precio estándar de Oracle Cloud Infrastructure se aplica a cada cubo activado para el control de versiones. Se le cobrarán todas las versiones de objeto más recientes y las versiones de objeto anteriores (incluidas las versiones suprimidas) almacenadas en el cubo. Las versiones de objeto anteriores se conservarán hasta que las suprima explícitamente.
El control de versiones de objeto aumenta los costos de almacenamiento. Considere el uso de Gestión del ciclo de vida de objetos como ayuda para gestionar las versiones de objetos de forma automática.
Tareas de control de versiones
Puede realizar las siguientes tareas de control de versiones de objeto:
Estado de control de versiones de objeto
Cada cubo de Object Storage tiene el estado de control de versiones de objeto desactivado, activado o suspendido. Por defecto, el control de versiones de objeto está desactivado en un cubo. Es importante entender el comportamiento asociado con cada estado de control de versiones de objeto.
Desactivada
Si el control de versiones de objeto está desactivado en un cubo.
-
El control de versiones de objeto nunca se ha activado en el cubo.
-
Al cargar un objeto con el mismo nombre que un objeto existente, el objeto se sobrescribe y el objeto sobrescrito no se conserva ni se puede recuperar.
-
Al suprimir un objeto, la supresión es permanente y los objetos no se pueden recuperar.
Activadas
Si el control de versiones de objeto está activado en un cubo:
-
Al cargar un objeto con el mismo nombre que un objeto existente, el objeto existente se convierte en una versión anterior y el objeto recién cargado pasa a ser la versión más reciente.
-
A cada objeto cargado se le asigna un identificador de versión único. El identificador permite dirigir las acciones de Object Storage a una versión específica.
-
Al suprimir un objeto, Object Storage conserva una versión del objeto suprimido. Para obtener más información sobre la supresión de objetos, consulte Supresión de versiones de objeto.
-
No puede desactivar el control de versiones de objeto. Sin embargo, puede suspender el control de versiones.
Suspendidos
Si se suspende el control de versiones de objeto en un cubo:
-
El comportamiento de carga y supresión es el mismo que en un cubo con el control de versiones desactivado.
-
Las versiones de objeto creadas antes de la suspensión del control de versiones se conservan, a menos que realice acciones explícitas para suprimirlas.
-
Puede volver a activar el control de versiones de objeto en cualquier momento.
Supresión de versión de objeto
Ningún objeto se suprime físicamente de un cubo que tenga activado el control de versiones a no ser que realice una acción explícita para ello. Si suprime un objeto sin tener como destino una versión específica, la versión más reciente del objeto se convierte en una versión de objeto anterior y se crea un marcador de supresión especial que marca el punto de supresión. Un marcador de supresión solo contiene metadatos mínimos. Si suprime una carpeta, se crea un marcador de supresión para cada objeto de la carpeta. Suprima el marcador de supresión para que esa versión suprimida se convierta en la versión más reciente del objeto.
Al cargar un objeto con el mismo nombre que el marcador de supresión, el objeto cargado se convierte en la versión más reciente del objeto. El marcador de supresión se conserva. Puede haber varios marcadores de supresión para un objeto y puede recuperar cualquiera de las versiones de objeto anteriores.
La supresión de la versión de objeto es diferente. Al suprimir una versión de objeto, la versión se suprime permanentemente. La supresión permanente también ocurre si suprime explícitamente la versión más reciente por ID de versión. Todas las operaciones de supresión que tienen como objetivo un ID de versión de objeto específico suprimen permanentemente los datos.
Políticas de IAM necesarias
Para utilizar Oracle Cloud Infrastructure, un administrador debe ser miembro de un grupo al que un administrador de arrendamiento haya otorgado acceso de seguridad en una política . Este acceso es necesario tanto si utiliza la Consola como la API de REST con un SDK, una CLI u otra herramienta. Si recibe un mensaje que indica que no tiene permiso o no está autorizado, verifique con el administrador del arrendamiento el tipo de acceso que tiene y en qué compartimento trabaja el acceso.
Si no está familiarizado con las políticas, consulte Gestión de dominios de identidad y Políticas comunes.
Para administradores:
- Puede crear una política que permita al grupo de IAM especificado gestionar espacios de nombre de Object Storage, cubos y sus objetos asociados en todos los compartimentos del arrendamiento. Por ejemplo, para permitir que el grupo de IAM StorageAdmins realice todas las acciones en el arrendamiento:
Allow group StorageAdmins to manage object-family in tenancy
- Como alternativa, puede crear políticas que reduzcan el ámbito de acceso. Por ejemplo, puede crear políticas que permitan al grupo StorageAdmins gestionar solo los cubos y los objetos de un compartimento denominado ObjectStore del arrendamiento:
Allow group StorageAdmins to manage buckets in compartment ObjectStore Allow group StorageAdmins to manage objects in compartment ObjectStore
- Si crea políticas más restrictivas que otorgan permisos individuales, se requiere BUCKET_UPDATE para activar el control de versiones. La carga de objetos, la sustitución de objetos existentes o la supresión de objetos requieren los permisos habituales necesarios para esas operaciones. OBJECT_VERSION_DELETE es necesario para suprimir versiones de objeto. Por ejemplo, para permitir que un grupo denominado StorageSupport gestione los recursos de Object Storage y evitar que ese grupo elimine las versiones de objeto de forma permanente:
Allow group StorageSupport to manage object-family in tenancy where request.operation != 'DeleteObjectVersion'
Para obtener más información sobre otras alternativas para la escritura de políticas, consulte Detalles de Object Storage, Archive Storage y Data Transfer.
Ámbito y restricciones
- El control de versiones se puede activar en un cubo en el nivel estándar de (Object Storage) o Archive Storage.
- Restaurar un objeto archivado es una operación in situ y no crea una versión de objeto.
- Puede renombrar la versión más reciente de un objeto, pero no puede renombrar una versión de objeto anterior. Cuando se renombra un objeto, se crea un nuevo objeto.
Interacción entre el control de versiones y otras funciones de Object Storage
En esta sección se describen algunos elementos clave que debe conocer sobre la interacción entre el control de versiones de objeto y otras funciones de Object Storage.
Nuevo cifrado del cubo
El cifrado nuevo de cubos (usando su propia clave de cifrado maestra o de Oracle) también vuelve a cifrar cualquier versión de objeto existente.
Gestión del ciclo de vida
Las políticas de ciclo de vida pueden archivar la versión más reciente o las versiones anteriores de un objeto. Cuando las políticas de ciclo de vida suprimen la versión más reciente de un objeto, ese objeto se convierte en una versión anterior y se crea un marcador de supresión. Cuando las políticas de ciclo de vida suprimen una versión anterior de un objeto, esa supresión es permanente.
Copia de objetos
Si copia la versión más reciente de un objeto en un cubo diferente, solo se copia el objeto. No se copia ninguna de las versiones anteriores del objeto. Puede copiar una versión anterior de un objeto en otro cubo, pero esa acción crea la versión más reciente de un nuevo objeto o una nueva versión de objeto en el cubo de destino.
Replicación
- La replicación no puede replicar versiones de objeto anteriores.
- No puede activar el control de versiones en un cubo de destino de replicación. Un cubo de destino es de solo lectura.
Reglas de retención
- No puede agregar reglas de retención a un cubo que tenga activado el control de versiones.
- No puede activar el control de versiones en un cubo con reglas de retención activas.
- Puede agregar reglas de retención al cubo que tenga el control de versiones suspendido. Sin embargo, no puede reanudar el control de versiones con reglas de retención activas.