Set Blob Service Properties

La Set Blob Service Properties operación establece las propiedades para el punto de conexión de Blob Storage de una cuenta de almacenamiento, incluidas las propiedades de Storage Analytics, las reglas de uso compartido de recursos entre orígenes (CORS) y la configuración de eliminación temporal.

También puede usar esta operación para establecer la versión de solicitud predeterminada para todas las solicitudes entrantes en Blob Storage que no tienen una versión especificada.

Para más información sobre las reglas de CORS, consulte Compatibilidad de CORS con los servicios de Azure Storage.

Solicitud

La solicitud Set Blob Service Properties se puede especificar como sigue. Se recomienda usar HTTPS. Reemplace account-name por el nombre de la cuenta de almacenamiento:

Método URI de solicitud Versión de HTTP
PUT https://account-name.blob.core.windows.net/?restype=service&comp=properties HTTP/1.1

Nota

El URI siempre debe incluir un carácter de barra diagonal (/) para separar el nombre de host de la ruta de acceso y las partes de consulta del URI. En esta operación, la parte de ruta de acceso del URI está vacía.

Parámetros del identificador URI

Parámetro del URI Descripción
restype=service&comp=properties Necesario. Es necesaria la combinación de ambas cadenas de consulta para establecer las propiedades del servicio de almacenamiento.
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 autorización, el nombre de la cuenta de almacenamiento y la firma. Para obtener más información, vea Autorización de solicitudes a Azure Storage.
Date o x-ms-date Necesario. Especifica la hora universal coordinada (UTC) de la solicitud. Para obtener más información, vea Autorización de solicitudes a Azure Storage.
x-ms-version Obligatorio para todas las solicitudes autorizadas. 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-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.

Cuerpo de la solicitud

Para la versión 2012-02-12 y otras anteriores, el formato del cuerpo de la solicitud es el siguiente:

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <Logging>  
        <Version>version-number</Version>  
        <Delete>true|false</Delete>  
        <Read>true|false</Read>  
        <Write>true|false</Write>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </Logging>  
    <Metrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </Metrics>  
    <!-- The DefaultServiceVersion element can only be set for Blob Storage, and the request must be made using version 2011-08-18 and later -->  
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>  
</StorageServiceProperties>  

Para la versión 2013-08-15 y otras posteriores, el formato del cuerpo de la solicitud es el siguiente:

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <Logging>  
        <Version>version-number</Version>  
        <Delete>true|false</Delete>  
        <Read>true|false</Read>  
        <Write>true|false</Write>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </Logging>  
    <HourMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>  
            <AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>  
            <MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>  
            <ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>  
            <AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>  
        </CorsRule>  
    </Cors>  
    <!-- The DefaultServiceVersion element can only be set for Blob Storage, and the request must be made using version 2011-08-18 and later -->  
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>  
</StorageServiceProperties>  

Para la versión 2017-07-29 y posteriores, el formato del cuerpo de la solicitud es el siguiente:

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <Logging>  
        <Version>version-number</Version>  
        <Delete>true|false</Delete>  
        <Read>true|false</Read>  
        <Write>true|false</Write>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </Logging>  
    <HourMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>  
            <AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>  
            <MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>  
            <ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>  
            <AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>  
        </CorsRule>  
    </Cors>    
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
    <DeleteRetentionPolicy>
        <Enabled>true|false</Enabled>
        <Days>number-of-days</Days>
    </DeleteRetentionPolicy>   
</StorageServiceProperties>  

Para la versión 2018-03-28 y posteriores, el formato del cuerpo de la solicitud es el siguiente:

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <Logging>  
        <Version>version-number</Version>  
        <Delete>true|false</Delete>  
        <Read>true|false</Read>  
        <Write>true|false</Write>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </Logging>  
    <HourMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>  
            <AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>  
            <MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>  
            <ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>  
            <AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>  
        </CorsRule>  
    </Cors>    
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
    <DeleteRetentionPolicy>
        <Enabled>true|false</Enabled>
        <Days>number-of-days</Days>
    </DeleteRetentionPolicy>
    <StaticWebsite>
        <Enabled>true|false</Enabled>
        <IndexDocument>default-name-of-index-page-under-each-directory</IndexDocument>
        <ErrorDocument404Path>absolute-path-of-the-custom-404-page</ErrorDocument404Path>
    </StaticWebsite>
</StorageServiceProperties>  

Para la versión 2019-12-12 y posteriores, el formato del cuerpo de la solicitud es el siguiente:

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <Logging>  
        <Version>version-number</Version>  
        <Delete>true|false</Delete>  
        <Read>true|false</Read>  
        <Write>true|false</Write>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </Logging>  
    <HourMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>version-number</Version>  
        <Enabled>true|false</Enabled>  
        <IncludeAPIs>true|false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true|false</Enabled>  
            <Days>number-of-days</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>comma-separated-list-of-allowed-origins</AllowedOrigins>  
            <AllowedMethods>comma-separated-list-of-HTTP-verbs</AllowedMethods>  
            <MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>  
            <ExposedHeaders>comma-separated-list-of-response-headers</ExposedHeaders>  
            <AllowedHeaders>comma-separated-list-of-request-headers</AllowedHeaders>  
        </CorsRule>  
    </Cors>    
    <DefaultServiceVersion>default-service-version-string</DefaultServiceVersion>
    <DeleteRetentionPolicy>
        <Enabled>true|false</Enabled>
        <Days>number-of-days</Days>
    </DeleteRetentionPolicy>
    <StaticWebsite>
        <Enabled>true|false</Enabled>
        <IndexDocument>default-name-of-index-page-under-each-directory</IndexDocument>
        <DefaultIndexDocumentPath>absolute-path-of-the-default-index-page</DefaultIndexDocumentPath>
        <ErrorDocument404Path>absolute-path-of-the-custom-404-page</ErrorDocument404Path>
    </StaticWebsite>
</StorageServiceProperties>  

A partir de la versión 2013-08-15, puede llamar a Set Blob Service Properties con uno o varios elementos raíz especificados en el cuerpo de la solicitud. Entre los elementos raíz se incluyen:

  • Logging
  • HourMetrics
  • MinuteMetrics
  • Cors
  • DefaultServiceVersion
  • DeleteRetentionPolicy: versión 2017-07-29 y posteriores
  • StaticWebsite: versión 2018-03-28 y posteriores

Ya no es necesario especificar todos los elementos raíz en la solicitud. Si omite un elemento raíz, se conservan los valores existentes del servicio para esa funcionalidad. Sin embargo, si especifica un elemento raíz, debe especificar todos los elementos secundarios de ese elemento.

La tabla siguiente describe los elementos del cuerpo de la solicitud:

Nombre del elemento Descripción
Logging Opcional a partir de la versión 2013-08-15. Es necesario para las versiones anteriores. Agrupa los valores de Logging de análisis de Azure.
Métricas Es necesario para las versiones 2012-02-12 y anteriores. No es aplicable a la versión 2013-08-15 y posteriores. Agrupa la configuración de métricas de Azure Analytics, que proporciona un resumen de las estadísticas de solicitud agrupadas por API en agregados por hora para blobs.
HourMetrics Opcional para la versión 2013-08-15 y posteriores; no es aplicable a versiones anteriores. Agrupa la configuración de HourMetrics de Azure Analytics, que proporciona un resumen de las estadísticas de solicitud agrupadas por API en agregados por hora para blobs.
MinuteMetrics Opcional para la versión 2013-08-15 y posteriores; no es aplicable a versiones anteriores. Agrupa la configuración de MinuteMetrics de Azure Analytics, que proporciona estadísticas de solicitud para cada minuto para los blobs. En el caso de las versiones anteriores a 2013-08-15, MinuteMetrics no se incluye en el cuerpo de la respuesta.
Versión Obligatorio si se especifica la configuración Registro, Métricas, HourMetrics o MinuteMetrics . La versión del análisis de almacenamiento que se va a configurar.
Eliminar Obligatorio si se especifica la configuración Registro, Métricas, HourMetrics o MinuteMetrics . Se aplica solamente a la configuración de registro. Indica si se deben registrar todas las solicitudes de eliminación.
Lectura Obligatorio si se especifica la configuración Registro, Métricas, HourMetrics o MinuteMetrics . Se aplica solamente a la configuración de registro. Indica si se deben registrar todas las solicitudes de lectura.
Escritura Obligatorio si se especifica la configuración Registro, Métricas, HourMetrics o MinuteMetrics . Se aplica solamente a la configuración de registro. Indica si se deben registrar todas las solicitudes de escritura.
Enabled Necesario. Indica si las métricas están habilitadas para Blob Storage.

Si está habilitada la replicación con redundancia geográfica con acceso de lectura, se recopilan las métricas principales y secundarias. Si la replicación con redundancia geográfica con acceso de lectura no está habilitada, solo se recopilan las métricas principales.
IncludeAPIs Solo es obligatorio si se han habilitado las métricas. Se aplica solamente a la configuración de métricas. Indica si las métricas deben generar estadísticas de resumen para las operaciones de la API a las que se ha llamado.
RetentionPolicy/Enabled Necesario. Indica si se ha habilitado una directiva de retención para el servicio de almacenamiento.
RetentionPolicy/Days Solo es obligatorio si se ha habilitado una directiva de retención. Indica el número de días que se deberían conservar los datos de métricas o de registro. Se eliminan todos los datos anteriores a este valor. El valor mínimo que se puede especificar es 1; el valor máximo es 365 (un año).
RetentionPolicy/AllowPermanentDelete Opcional, versión 2020-02-10 y posteriores. Permite habilitar la eliminación permanente en la cuenta de almacenamiento. El valor predeterminado es false.
DefaultServiceVersion Opcional. Para establecer DefaultServiceVersion, llame a Set Blob Service Properties mediante la versión 2011-08-18 y posteriores. DefaultServiceVersion indica la versión predeterminada que se va a usar para las solicitudes a Blob Storage si no se especifica la versión de una solicitud entrante. Entre los valores posibles se incluyen la versión 2008-10-27 y posteriores. Para más información sobre las versiones aplicables, consulte Control de versiones para los servicios de Azure Storage.

Solo se aplica a Blob Storage.
Cors Opcional. El elemento Cors es compatible con la versión 2013-08-15 y posteriores. Agrupa todas las reglas de CORS.

Si se omite este grupo de elementos, no se sobrescribe la configuración de CORS existente.
CorsRule Opcional. Especifica una regla de CORS para Blob Storage. Puede incluir hasta cinco elementos CorsRule en la solicitud. Si no se incluye ningún elemento CorsRule en el cuerpo de la solicitud, se eliminan todas las reglas de CORS y CORS está deshabilitado para Blob Storage.
AllowedOrigins Obligatorio si el elemento CorsRule está presente. Una lista separada por comas de dominios de origen que se permiten a través de CORS o "*" para permitir todos los dominios. Un dominio de origen también puede incluir un carácter comodín en el subdominio para permitir solicitudes a través de CORS para todos los subdominios de un dominio. Tiene un límite de 64 dominios de origen. Cada origen permitido puede tener un máximo de 256 caracteres.
ExposedHeaders Obligatorio si el elemento CorsRule está presente. Lista delimitada por comas de encabezados de respuesta para exponer a los clientes de CORS. Tiene un límite de 64 encabezados definidos y dos encabezados con prefijo. Cada encabezado puede tener un máximo de 256 caracteres.
MaxAgeInSeconds Obligatorio si el elemento CorsRule está presente. Número de segundos durante los cuales el cliente/explorador debe almacenar en memoria caché una respuesta de comprobaciones preparatorias.
AllowedHeaders Obligatorio si el elemento CorsRule existe. Lista delimitada por comas de encabezados que se permite que formen parte de la solicitud entre orígenes. Tiene un límite de 64 encabezados definidos y 2 encabezados con prefijo. Cada encabezado puede tener un máximo de 256 caracteres.
AllowedMethods Obligatorio si el elemento CorsRule existe. Lista delimitada por comas de los métodos HTTP que puede ejecutar el origen. Para Azure Storage, los métodos permitidos son DELETE, GET, HEAD, MERGE, PATCH, POST, OPTIONS y PUT.
DeleteRetentionPolicy Opcional. Para establecer DeleteRetentionPolicy, llame a Set Blob Service Properties mediante la versión 2017-07-29 y posteriores. Agrupa la configuración de eliminación temporal. Solo se aplica a Blob Storage.
DeleteRetentionPolicy/Enabled Necesario. Indica si una operación de eliminación conserva o quita inmediatamente el blob o la instantánea eliminados.
DeleteRetentionPolicy/Days Solo es necesario si DeleteRetentionPolicy/Enabled es true. Indica el número de días que se conservan los blobs eliminados. Todos los datos anteriores a este valor se eliminan permanentemente. El valor mínimo que puede especificar es 1; el valor más grande es 365.
StaticWebsite Opcional. Para establecer las propiedades StaticWebsite , llame a Set Blob Service Properties mediante la versión 2018-03-28 y posteriores. Solo se aplica a Blob Storage.
StaticWebsite/Enabled Necesario. Indica si la compatibilidad con sitios web estáticos está habilitada para la cuenta especificada.
StaticWebsite/IndexDocument Opcional. La página web que Azure Storage atiende para las solicitudes a la raíz de un sitio web o a cualquier subcarpeta (por ejemplo, index.html). El valor distingue mayúsculas de minúsculas.
StaticWebsite/DefaultIndexDocumentPath Opcional. Ruta de acceso absoluta a una página web que Azure Storage atiende para las solicitudes que no corresponden a un archivo existente. El contenido de la página se devuelve con HTTP 200 OK (por ejemplo, index.html). El elemento se excluye mutuamente con StaticWebsite/IndexDocument. El valor distingue mayúsculas de minúsculas.
StaticWebsite/ErrorDocument404Path Opcional. Ruta de acceso absoluta a una página web que Azure Storage atiende para las solicitudes que no corresponden a un archivo existente. El contenido de la página se devuelve con HTTP 404 Not Found (por ejemplo, error/404.html). Solo se admite una sola página personalizada 404 en cada sitio web estático. El valor distingue mayúsculas de minúsculas.

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 202 (Aceptado).

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
x-ms-request-id Identifica de forma única una solicitud realizada en el servicio.
x-ms-version Especifica la versión de la operación utilizada para la respuesta. Para obtener más información, vea Versiones de los servicios de Azure Storage.
x-ms-client-request-id Se puede usar para solucionar problemas de solicitudes y respuestas correspondientes. El valor de este encabezado es igual al valor del x-ms-client-request-id encabezado si está presente en la solicitud y el valor no contiene más de 1024 caracteres ASCII visibles. Si el x-ms-client-request-id encabezado no está presente en la solicitud, no estará presente en la respuesta.

Response body

Ninguno.

Authorization

La autorización es necesaria al llamar a cualquier operación de acceso a datos en Azure Storage. Puede autorizar la Set Blob Service Properties 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 que un usuario, grupo o entidad de servicio de Microsoft Entra llame a la Set Blob Service Properties operación y el rol RBAC integrado con privilegios mínimos que incluye esta acción:

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

Comentarios

En Almacenamiento de Azure se aplican las restricciones y limitaciones siguientes a las reglas de CORS:

  • Se puede almacenar un máximo de cinco reglas.

  • El tamaño máximo de todas las configuraciones de reglas de CORS en la solicitud, excepto las etiquetas XML, no debe superar los 2 KiB.

  • La longitud de un encabezado permitido, un encabezado expuesto o un origen permitido no debe superar los 256 caracteres.

  • Los encabezados permitidos y los encabezados expuestos pueden ser:

    • Encabezados literales, donde se proporciona el nombre exacto del encabezado, por ejemplo x-ms-meta-processed. Se puede especificar un máximo de 64 encabezados literales en la solicitud.

    • Encabezados con prefijo, donde se proporciona un prefijo del encabezado, como x-ms-meta-data*. Especificar un prefijo de esta manera permite o expone cualquier encabezado que comience con el prefijo especificado. Se puede especificar un máximo de dos encabezados con prefijo en la solicitud.

  • Los métodos (o verbos HTTP) especificados en el elemento AllowedMethods deben cumplir los métodos admitidos por las API de Azure Storage. Los métodos admitidos son DELETE, GET, HEAD, MERGE, PATCH, POST, OPTIONS y PUT.

Es opcional especificar reglas de CORS en la solicitud. Si llama a Set Blob Service Properties sin especificar el elemento Cors en el cuerpo de la solicitud, se mantienen las reglas de CORS existentes.

Para deshabilitar CORS, llame a Set Blob Service Properties con una configuración de reglas CORS vacía (es decir,</Cors> ) y ninguna regla CORS interna. Esta llamada elimina las reglas existentes y deshabilita CORS para Blob Storage.

Todos los elementos de regla de CORS son necesarios si se especifica el elemento CorsRule . Se produce un error en la solicitud con el código de error 400 (Bad Request) si falta algún elemento.

A partir de la versión 2013-08-15, los elementos de configuración XML son opcionales, por lo que puede actualizar un elemento específico enviando un XML que contenga solo el elemento actualizado. Otras opciones de configuración no se ven afectadas.

Para obtener información detallada sobre las reglas de CORS y la lógica de evaluación, consulte Compatibilidad de CORS con los servicios de Azure Storage.

Facturación

Las solicitudes de precios pueden originarse en clientes que usan API de Blob Storage, ya sea directamente a través de la API REST de Blob Storage o desde 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 a las transacciones de escritura. En la tabla siguiente se muestra la categoría de facturación de Set Blob Service Properties las solicitudes basadas en el tipo de cuenta de almacenamiento:

Operación Tipo de cuenta de almacenamiento Categoría de facturación
Set Blob Service Properties Blobs en bloques Premium
De uso general, estándar, v2
Otras operaciones
Set Blob Service Properties 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.

Solicitud y respuesta de ejemplo

El siguiente URI de ejemplo realiza una solicitud para cambiar las propiedades de Blob Storage para la cuenta de almacenamiento ficticia denominada myaccount:

PUT https://myaccount.blob.core.windows.net/?restype=service&comp=properties HTTP/1.1  

La solicitud se envía con los encabezados siguientes:

x-ms-version: 2018-03-28
x-ms-date: Tue, 12 Sep 2018 23:38:35 GMT 
Authorization: SharedKey myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=  
Host: myaccount.blob.core.windows.net  

La solicitud se envía con el cuerpo XML siguiente:

<?xml version="1.0" encoding="utf-8"?>  
<StorageServiceProperties>  
    <Logging>  
        <Version>1.0</Version>  
        <Delete>true</Delete>  
        <Read>false</Read>  
        <Write>true</Write>  
        <RetentionPolicy>  
            <Enabled>true</Enabled>  
            <Days>7</Days>  
        </RetentionPolicy>  
    </Logging>  
    <HourMetrics>  
        <Version>1.0</Version>  
        <Enabled>true</Enabled>  
        <IncludeAPIs>false</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true</Enabled>  
            <Days>7</Days>  
        </RetentionPolicy>  
    </HourMetrics>  
    <MinuteMetrics>  
        <Version>1.0</Version>  
        <Enabled>true</Enabled>  
        <IncludeAPIs>true</IncludeAPIs>  
        <RetentionPolicy>  
            <Enabled>true</Enabled>  
            <Days>7</Days>  
        </RetentionPolicy>  
    </MinuteMetrics>  
    <Cors>  
        <CorsRule>  
            <AllowedOrigins>http://www.fabrikam.com,http://www.contoso.com</AllowedOrigins>  
            <AllowedMethods>GET,PUT</AllowedMethods>  
            <MaxAgeInSeconds>500</MaxAgeInSeconds>  
            <ExposedHeaders>x-ms-meta-data*,x-ms-meta-customheader</ExposedHeaders>  
            <AllowedHeaders>x-ms-meta-target*,x-ms-meta-customheader</AllowedHeaders>  
        </CorsRule>  
    </Cors>
    <DeleteRetentionPolicy>
        <Enabled>true</Enabled>
        <Days>5</Days>
    </DeleteRetentionPolicy>  
    <StaticWebsite>  
        <Enabled>true</Enabled>  
        <IndexDocument>index.html</IndexDocument>  
        <ErrorDocument404Path>error/404.html</ErrorDocument404Path>  
    </StaticWebsite>  
    <DefaultServiceVersion>2018-03-28</DefaultServiceVersion>  
</StorageServiceProperties>  

Una vez enviada la solicitud, se devuelve la respuesta siguiente:

HTTP/1.1 202 Accepted
Transfer-Encoding: chunked
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cb939a31-0cc6-49bb-9fe5-3327691f2a30 
x-ms-version: 2018-03-28
Date: Tue, 12 Sep 2018 23:38:35 GMT
  

Consulte también

Storage Analytics
Compatibilidad de CORS con los servicios de Azure Storage
Especificación HTTP de CORS