Définition des propriétés du service de File d'attente
L’opération Set Queue Service Properties
définit les propriétés du point de terminaison de service file d’attente d’un compte de stockage, y compris les propriétés pour les règles cors (Storage Analytics et cors). Pour plus d’informations sur les règles CORS, consultez Prise en charge CORS pour les services de stockage .
Requête
Vous pouvez spécifier la Set Queue Service Properties
demande comme suit. Nous vous recommandons d’utiliser HTTPS. Remplacez account-name par le nom de votre compte de stockage :
Méthode | URI de demande | Version HTTP |
---|---|---|
PUT | https://account-name.queue.core.windows.net/?restype=service&comp=properties |
HTTP/1.1 |
Notes
L’URI doit toujours inclure un caractère de barre oblique (/) pour séparer le nom d’hôte des parties de chemin d’accès et de requête de l’URI. Dans cette opération, la partie chemin d’accès de l’URI est vide.
Paramètres URI
Paramètre | Description |
---|---|
restype=service&comp=properties |
Obligatoire. La combinaison des deux chaînes de requête est requise pour définir les propriétés du service Stockage Azure. |
timeout |
Optionnel. Le paramètre timeout est exprimé en secondes. Pour plus d’informations, consultez Définir des délais d’attente pour les opérations de service file d’attente. |
En-têtes de requête
Les en-têtes de requête obligatoires et facultatifs sont décrits dans le tableau suivant :
En-tête de requête | Description |
---|---|
Authorization |
Obligatoire. Spécifie le schéma d’autorisation, le nom du compte de stockage et la signature. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure. |
Date ou x-ms-date |
Obligatoire. Spécifie la date/heure en temps universel coordonné (UTC) pour la requête. Pour plus d’informations, consultez Autoriser les requêtes auprès du Stockage Azure. |
x-ms-version |
Obligatoire pour toutes les demandes autorisées. Spécifie la version de l'opération à utiliser pour cette demande. Pour plus d'informations, consultez la page Contrôle de version pour les services de Stockage Microsoft Azure. |
x-ms-client-request-id |
Optionnel. Fournit une valeur opaque générée par le client avec une limite de caractères de 1 kibioctet (Kio) enregistrée dans les journaux lors de la configuration de la journalisation. Nous vous recommandons vivement d’utiliser cet en-tête pour mettre en corrélation les activités côté client avec les demandes reçues par le serveur. Pour plus d’informations, consultez Surveiller le stockage File d’attente Azure. |
Corps de la demande
Le format du corps de la demande pour la version 2012-02-12 et les versions antérieures est le suivant :
<?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>
</StorageServiceProperties>
Le format du corps de la demande pour la version 2013-08-15 et ultérieure est le suivant :
<?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-verb</AllowedMethods>
<MaxAgeInSeconds>max-caching-age-in-seconds</MaxAgeInSeconds>
<ExposedHeaders>comma-seperated-list-of-response-headers</ExposedHeaders>
<AllowedHeaders> comma-seperated-list-of-request-headers </AllowedHeaders>
</CorsRule>
</Cors>
</StorageServiceProperties>
À partir de la version 2013-08-15, vous pouvez appeler Set Queue Service Properties
avec un ou plusieurs éléments racines spécifiés dans le corps de la demande. Les éléments racine incluent :
- Logging
- HourMetrics
- MinuteMetrics
- Scro
Il n’est plus nécessaire de spécifier chaque élément racine sur la demande. Si vous omettez un élément racine, les paramètres existants pour le service de cette fonctionnalité sont conservés. Toutefois, si vous spécifiez un élément racine spécifié, vous devez spécifier chaque élément enfant pour cet élément.
Les éléments du corps de la requête sont décrits dans le tableau suivant :
Nom de l'élément | Description |
---|---|
Logging | Facultatif à partir de la version 2013-08-15. Obligatoire pour les versions antérieures. Regroupe les paramètres de journalisation Storage Analytics. |
Métriques | Obligatoire pour la version 2012-02-12 et les versions antérieures. Non applicable pour les versions 2013-08-15 et ultérieures. Regroupe les paramètres des métriques Storage Analytics. Les paramètres Metrics fournissent un résumé des statistiques de demande regroupées par l'API en agrégats horaires des files d'attente. |
HourMetrics | Facultatif pour les versions 2013-08-15 et ultérieures. Non applicable aux versions antérieures. Regroupe les paramètres Storage Analytics HourMetrics. Les paramètres HourMetrics fournissent un résumé des statistiques de demande regroupées par l'API en agrégats horaires des files d'attente. |
MinuteMetrics | Facultatif pour les versions 2013-08-15 et ultérieures. Non applicable aux versions antérieures. Regroupe les paramètres Storage Analytics MinuteMetrics. Les paramètres MinuteMetrics fournissent des statistiques de demande pour chaque minutes des files d'attente. Pour les versions antérieures à 2013-08-15, MinuteMetrics n’est pas inclus dans le corps de la réponse. |
Version | Obligatoire si les paramètres Logging, Metrics, HourMetrics ou MinuteMetrics sont spécifiés. La version de Storage Analytics à configurer. |
Supprimer | Obligatoire si les paramètres Logging, Metrics, HourMetrics ou MinuteMetrics sont spécifiés. S'applique uniquement à la configuration de journalisation. Indique si toutes les demandes de suppression doivent être journalisées. |
Lire | Obligatoire si les paramètres Logging, Metrics, HourMetrics ou MinuteMetrics sont spécifiés. S'applique uniquement à la configuration de journalisation. Indique si toutes les demandes de lecture doivent être journalisées. |
Écrire | Obligatoire si les paramètres Logging, Metrics, HourMetrics ou MinuteMetrics sont spécifiés. S'applique uniquement à la configuration de journalisation. Indique si toutes les demandes d'écriture doivent être journalisées. |
Activé | Obligatoire. Indique si les métriques sont activées pour le service de File d'attente. Si la réplication géographique redondante avec accès en lecture est activée, les métriques primaires et secondaires sont collectées. Si la réplication géoredondante d’accès en lecture n’est pas activée, seules les métriques principales sont collectées. |
IncludeAPIs | Obligatoire uniquement si les métriques sont activées. S'applique uniquement à la configuration des métriques. Indique si les métriques doivent générer des statistiques de synthèse pour les opérations d'API appelées. |
RetentionPolicy/Enabled | Obligatoire. Indique si une stratégie de rétention est activée pour le service de stockage. |
RetentionPolicy/Days | Obligatoire uniquement si une stratégie de rétention est activée. Indique le nombre de jours pendant lesquels les métriques ou les données de journalisation doivent être conservées. Toutes les données antérieures à cette valeur seront supprimées. La valeur minimale que vous pouvez spécifier est 1 , et la valeur maximale est 365 (un an). |
Scro | Optionnel. L’élément Cors est pris en charge pour les versions 2013-08-15 et ultérieures. Regroupe toutes les règles CORS. Si cet élément n'est pas spécifié, le regroupement ne remplace pas les paramètres CORS existants. |
CorsRule | Optionnel. Spécifie une règle CORS pour le service de File d'attente. Incluez jusqu'à cinq éléments CorsRule dans la requête. Si aucun élément CorsRule n'est inclus dans le corps de la requête, toutes les règles CORS sont supprimées, et les règles CORS sont désactivées pour le service de File d'attente. |
AllowedOrigins | Obligatoire si l'élément CorsRule est présent. Liste séparée par des virgules de domaines d'origine qui sont autorisés via les règles CORS, ou « * » si tous les domaines sont autorisés. Un domaine d’origine peut également inclure un caractère générique dans le sous-domaine pour autoriser les demandes via CORS pour tous les sous-domaines d’un domaine. Limitée à 64 domaines d'origine. Chaque origine autorisée peut comporter jusqu'à 256 caractères. |
ExposedHeaders | Obligatoire si l’élément CorsRule est présent. Liste séparée par des virgules d'en-têtes de réponse à exposer aux clients CORS. Limitée à 64 en-têtes définis et deux en-têtes avec préfixe. Chaque en-tête peut contenir jusqu’à 256 caractères. |
MaxAgeInSeconds | Obligatoire si l’élément CorsRule est présent. Nombre de secondes pendant lesquelles le client/navigateur doit mettre en cache une réponse préliminaire. |
AllowedHeaders | Obligatoire si l’élément CorsRule existe. Liste séparée par des virgules d'en-têtes autorisés à faire partie de la demande cross-origin. Limitée à 64 en-têtes définis et deux en-têtes avec préfixe. Chaque en-tête peut contenir jusqu’à 256 caractères. |
AllowedMethods | Obligatoire si l’élément CorsRule existe. Liste séparée par des virgules de méthodes HTTP qui sont autorisées à être exécutées par l'origine. Pour Stockage Azure, les méthodes autorisées sont DELETE , GET , HEAD , MERGE , POST , , OPTIONS ou PUT . |
response
La réponse inclut un code d'état HTTP et un ensemble d'en-têtes de réponse.
Code d’état
Une opération réussie renvoie le code d'état 202 (Accepté).
En-têtes de réponse
La réponse de l'opération inclut les en-têtes suivants. La réponse peut aussi inclure des en-têtes HTTP standard supplémentaires. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.
En-tête de réponse | Description |
---|---|
x-ms-request-id |
Identifie de manière unique une demande effectuée auprès du service. |
x-ms-version |
Spécifie la version de l’opération utilisée pour la réponse. Pour plus d'informations, consultez la page Contrôle de version pour les services de Stockage Microsoft Azure. |
x-ms-client-request-id |
Peut être utilisé pour résoudre les demandes et les réponses correspondantes. La valeur de cet en-tête est égale à la valeur de l’en-tête x-ms-client-request-id s’il est présent dans la requête et que la valeur ne contient pas plus de 1 024 caractères ASCII visibles. Si l’en-tête x-ms-client-request-id n’est pas présent dans la demande, il ne sera pas présent dans la réponse. |
Response body
Aucun.
Autorisation
Seul le propriétaire du compte peut appeler cette opération.
Notes
Les restrictions et limitations suivantes s'appliquent aux règles CORS du stockage Azure :
Il ne peut pas y avoir plus de cinq règles enregistrées.
La taille maximale de tous les paramètres de règles CORS sur la demande, à l’exception des balises XML, ne doit pas dépasser 2 Kio.
La longueur d'un en-tête autorisé, d'un en-tête exposé ou d'une origine autorisée ne doit pas dépasser 256 caractères.
Les en-têtes autorisés et les en-têtes exposés peuvent être l’un des éléments suivants :
Des en-têtes littéraux, où le nom précis d'en-tête est spécifié, tel que
x-ms-meta-processed
. Il ne peut pas y avoir plus de 64 en-têtes littéraux spécifiés sur la demande ;Des en-têtes préfixés, où un préfixe de l'en-tête est spécifié, tel que
x-ms-meta-data*
. La spécification d’un préfixe de cette manière autorise ou expose n’importe quel en-tête commençant par le préfixe spécifié. Il ne peut pas y avoir plus de deux en-têtes préfixés spécifiés sur la demande.
Les méthodes (ou verbes HTTP) spécifiées dans l’élément
AllowedMethods
doivent être conformes aux méthodes prises en charge par les API du service Stockage Azure. Les méthodes prises en charge sontDELETE
,GET
,HEAD
MERGE
,POST
,OPTIONS
, etPUT
.
La spécification de règles CORS sur la demande est facultative. Si vous appelez Set Queue Service Properties
sans spécifier l'élément Cors dans le corps de la requête, toutes les règles CORS existantes sont conservées.
Pour désactiver CORS, appelez Set Queue Service Properties
avec des paramètres de règles CORS vides (autrement dit,*</Cors>
) et aucune règle CORS interne. Cet appel supprime toutes les règles existantes et désactive CORS pour le service File d’attente.
Tous les éléments de règle CORS sont requis si l’élément CorsRule est spécifié. La demande échoue avec le code d’erreur 400 (Bad Request
) si un élément est manquant.
À partir de la version 2013-08-15, les éléments de paramètres XML étant facultatifs, vous pouvez donc mettre à jour un élément spécifique en envoyant un code XML qui contient uniquement l’élément mis à jour. Les autres paramètres ne sont pas affectés.
Pour plus d’informations sur les règles CORS et la logique d’évaluation, consultez Prise en charge de CORS pour les services de stockage Azure.
Exemple de requête et de réponse
L’exemple d’URI suivant effectue une demande de modification des propriétés du service file d’attente pour un compte de stockage fictif nommé myaccount :
PUT https://myaccount.queue.core.windows.net/?restype=service&comp=properties HTTP/1.1
La demande est envoyée avec les en-têtes suivants :
x-ms-version: 2013-08-15
x-ms-date: Wed, 23 Oct 2013 04:28:19 GMT
Authorization: SharedKey
myaccount:Z1lTLDwtq5o1UYQluucdsXk6/iB7YxEu0m6VofAEkUE=
Host: myaccount.queue.core.windows.net
La demande est envoyée avec le corps XML suivant :
<?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>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> 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>
</StorageServiceProperties>
Une fois la demande envoyée, la réponse suivante est renvoyée :
HTTP/1.1 202 Accepted
Connection: Keep-Alive
Transfer-Encoding: chunked
Date: Wed, 23 Oct 2013 04:28:20 GMT
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: cb939a31-0cc6-49bb-9fe5-3327691f2a30
x-ms-version: 2013-08-15
Voir aussi
Prise en charge de CORS pour les services stockage Azure
Spécification HTTP CORS