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.
Importante
Microsoft recomienda usar Microsoft Entra ID con identidades administradas para autorizar solicitudes a Azure Storage. Microsoft Entra ID proporciona una mayor seguridad y facilidad de uso en comparación con la autorización de clave compartida.
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, identidad administrada 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:
- Acción RBAC de Azure:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/write
- Rol integrado con privilegios mínimos:Colaborador de datos de Storage Blob
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 unexpiryTime
elemento en el pasado. -
ExpiryTime
no se puede especificar con unexpiryOption
valor deNever
.
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.