Establecer expiración de blobs

La Set Blob Expiry operación establece una fecha de expiración en un blob existente. Esta operación solo se permite en cuentas habilitadas para espacios de nombres jerárquicos. Se aplica a la versión del servicio 2020-02-10 y versiones posteriores.

Solicitud

La solicitud Set Blob Expiry se puede construir como sigue. Se recomienda usar HTTPS. Reemplace myaccount por el nombre de la cuenta de almacenamiento:

URI de solicitud de método PUT Versión de HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1

URI de servicio de almacenamiento emulado

Cuando realice una solicitud en el servicio de almacenamiento emulado, especifique el nombre de host del emulador y el puerto de Blob Storage como 127.0.0.1:10000, seguido del nombre de la cuenta de almacenamiento emulada:

URI de solicitud de método PUT Versión de HTTP
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=expiry HTTP/1.1

Para más información, consulte Uso del emulador de Azurite para desarrollo y pruebas locales de Azure Storage.

Parámetros del identificador URI

Puedes especificar los siguientes parámetros adicionales en el URI de la solicitud:

Parámetro Descripción
timeout Opcional. El parámetro timeout se expresa en segundos. Para más información, consulte Establecimiento de tiempos de espera para las operaciones de Blob Storage.

Encabezados de solicitud

Los encabezados de solicitud obligatorios y opcionales se describen en la tabla siguiente:

Encabezado de solicitud Descripción
Authorization Necesario. Especifica el esquema de autenticación, el nombre de la cuenta y la firma. Consulte Autenticación para los servicios de Azure Storage para más información.
Date o x-ms-date Necesario. Especifica la hora universal coordinada (UTC) de la solicitud. Para más información, consulte Autenticación para los servicios de Azure Storage.
x-ms-version Obligatorio para todas las solicitudes autenticadas. Especifica la versión de la operación que se utiliza para esta solicitud. Para obtener más información, vea Versiones de los servicios de Azure Storage.
x-ms-lease-id:<ID> Obligatorio si el blob tiene una concesión activa. Para realizar esta operación en un blob con una concesión activa, especifique el identificador de concesión válido de este encabezado.
x-ms-expiry-option Necesario. Para especificar la opción de fecha de expiración de la solicitud, consulte ExpiryOption.
x-ms-expiry-time Opcional. Hora a la que el archivo está establecido en expirar. El formato de la fecha de expiración varía según x-ms-expiry-option. Para obtener más información, vea ExpiryOption.
x-ms-client-request-id Opcional. Proporciona un valor opaco generado por el cliente con un límite de caracteres de 1 kibibyte (KiB) que se registra en los registros cuando se configura el registro. Se recomienda encarecidamente usar este encabezado para correlacionar las actividades del lado cliente con las solicitudes que recibe el servidor. Para obtener más información, vea Supervisar Azure Blob Storage.

ExpiryOption

Puede enviar los siguientes valores como encabezado x-ms-expiry-option . Este encabezado no distingue mayúsculas de minúsculas.

Opción de expiración Descripción
RelativeToCreation Establece la fecha de expiración relativa a la hora de creación del archivo. x-ms-expiry-time debe especificarse como el número de milisegundos que transcurrirán desde el momento de la creación.
RelativeToNow Establece la fecha de expiración relativa a la hora actual. x-ms-expiry-time debe especificarse como el número de milisegundos que transcurren desde el momento actual.
Absolute x-ms-expiry-time debe especificarse como una hora absoluta, en formato RFC 1123.
NeverExpire Establece que el archivo nunca expire o quite la fecha de expiración actual. x-ms-expiry-time no se debe especificar.

Cuerpo de la solicitud

El cuerpo de la solicitud para esta solicitud está vacío.

Solicitud de ejemplo

Request Syntax:  
PUT https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=expiry HTTP/1.1  
  
Request Headers:  
x-ms-version: 2020-02-10  
x-ms-date: Sun, 25 Sep 2020 14:37:35 GMT
x-ms-expiry-option: RelativeTonow
x-ms-expiry-time: 30000  
Authorization: SharedKey myaccount:J4ma1VuFnlJ7yfk/Gu1GxzbfdJloYmBPWlfhZ/xn7GI=    

Response

La respuesta incluye un código de estado HTTP y un conjunto de encabezados de respuesta.

status code

Una operación correcta devuelve el código de estado 200 Correcto.

Para obtener más información sobre los códigos de estado, vea Códigos de estado y de error.

Encabezados de respuesta

La respuesta para esta operación incluye los encabezados siguientes. La respuesta también puede incluir otros encabezados HTTP estándar. Todos los encabezados estándar se ajustan a la especificación del protocolo HTTP/1.1.

Encabezado de respuesta Descripción
ETag Contiene un valor que representa la versión del archivo. El valor se incluye entre comillas.
Last-Modified Devuelve la fecha y hora en que se modificó por última vez el directorio. El formato de la fecha sigue las convenciones de RFC 1123. Para obtener más información, vea Representar valores de fecha y hora en encabezados. Cualquier operación que modifique el directorio o sus propiedades actualiza la hora de la última modificación. Las operaciones en archivos no afectan a la hora de la última modificación del directorio.
x-ms-request-id Identifica de forma única la solicitud que se realizó y se puede usar para solucionar problemas de la solicitud. Para más información, consulte Solución de problemas de operaciones de API.
x-ms-version Indica la versión de Blob Storage que se usó para ejecutar la solicitud.
Date Valor de fecha y hora UTC generado por el servicio, que indica la hora a la que se inició la respuesta.

Respuesta de muestra

Response Status:  
HTTP/1.1 200 OK  
  
Response Headers:  
Date: Sun, 25 Sep 2011 23:47:09 GMT  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  

Authorization

Se requiere autorización al llamar a cualquier operación de acceso a datos en Azure Storage. Puede autorizar la Set Blob Expiry operación como se describe a continuación.

Azure Storage admite el uso de Microsoft Entra ID para autorizar solicitudes a datos de blobs. Con Microsoft Entra ID, puede usar el control de acceso basado en rol de Azure (RBAC de Azure) para conceder permisos a una entidad de seguridad. La entidad de seguridad puede ser un usuario, un grupo, una entidad de servicio de aplicación o una identidad administrada de Azure. La entidad de seguridad se autentica mediante Microsoft Entra ID para devolver un token de OAuth 2.0. Después, el token se puede usar para autorizar una solicitud en Blob service.

Para más información sobre la autorización mediante Microsoft Entra ID, consulte Autorización del acceso a blobs mediante Microsoft Entra ID.

Permisos

A continuación se enumeran las acciones de RBAC necesarias para un usuario, grupo o entidad de servicio de Microsoft Entra para llamar a la Set Blob Expiry operación y el rol RBAC integrado con privilegios mínimos que incluye esta acción:

Para más información sobre la asignación de roles mediante RBAC de Azure, consulte Asignación de un rol de Azure para el acceso a datos de blobs.

Comentarios

La semántica para establecer una fecha de expiración en un blob es la siguiente:

  • Set Expiry solo se puede establecer en un archivo y no en un directorio.
  • Set Expiry no se permite con un expiryTime elemento en el pasado.
  • ExpiryTime no se puede especificar con un expiryOption valor de Never.

Nota

No se puede restaurar un archivo expirado mediante la característica de eliminación temporal de blobs. Incluso si ha habilitado la eliminación temporal de la cuenta, un archivo expirado no se convierte en un blob eliminado temporalmente cuando expira. Solo los archivos eliminados pueden convertirse en archivos eliminados temporalmente.

Facturación

Las solicitudes de precios se pueden originar en clientes que usan las API de Blob Storage, ya sea directamente a través de la API rest de Blob Storage o de una biblioteca cliente de Azure Storage. Estas solicitudes acumulan cargos por transacción. El tipo de transacción afecta a cómo se cobra la cuenta. Por ejemplo, las transacciones de lectura se acumulan en una categoría de facturación diferente que las transacciones de escritura. En la tabla siguiente se muestra la categoría de facturación de Set Blob Expiry las solicitudes basadas en el tipo de cuenta de almacenamiento:

Operación Tipo de cuenta de almacenamiento Categoría de facturación
Establecer expiración de blobs Blobs en bloques Premium
De uso general, estándar, v2
Otras operaciones
Establecer expiración de blobs De uso general, estándar, v1 Operaciones de escritura

Para obtener información sobre los precios de la categoría de facturación especificada, consulte precios Azure Blob Storage.

Consulte también