Définition de liste de contrôle d’accès aux files d'attenteSet Queue ACL

L'opération Set Queue ACL définit les stratégies d'accès stockées pour la file d'attente qui peuvent être utilisées avec des signatures d'accès partagé.The Set Queue ACL operation sets stored access policies for the queue that may be used with Shared Access Signatures. Pour plus d’informations, consultez définir une stratégie d’accès stockée.For more information, see Define a stored access policy.

Notes

L'opération Set Queue ACL est disponible dans la version du 12/02/2012 et ultérieure.The Set Queue ACL operation is available in version 2012-02-12 and newer.

RequêteRequest

La demande Set Queue ACL peut être construite comme indiqué ci-dessous.The Set Queue ACL request may be constructed as follows. HTTPS est recommandé.HTTPS is recommended. Remplacez moncompte par le nom de votre compte de stockage :Replace myaccount with the name of your storage account:

MéthodeMethod URI de demandeRequest URI Version HTTPHTTP Version
PUT https://myaccount.queue.core.windows.net/myqueue?comp=acl HTTP/1.1HTTP/1.1

URI du service de stockage émuléEmulated Storage Service URI

Lorsque vous élaborez une demande pour le service de stockage émulé, spécifiez le nom d'hôte de l'émulateur et le port de service de File d'attente sous la forme 127.0.0.1:10001, suivi du nom de compte de stockage émulé :When making a request against the emulated storage service, specify the emulator hostname and Queue service port as 127.0.0.1:10001, followed by the emulated storage account name:

MéthodeMethod URI de demandeRequest URI Version HTTPHTTP Version
PUT http://127.0.0.1:10001/devstoreaccount1/myqueue?comp=acl HTTP/1.1HTTP/1.1

Pour plus d’informations, consultez différences entre l’émulateur de stockage et les services de stockage Azure.For more information, see Differences Between the Storage Emulator and Azure Storage Services.

Paramètres URIURI Parameters

Les paramètres supplémentaires suivants peuvent être spécifiés dans l'URI de la demande.The following additional parameters may be specified on the request URI.

ParamètreParameter DescriptionDescription
timeout facultatif.Optional. Le paramètre timeout est exprimé en secondes.The timeout parameter is expressed in seconds. Pour plus d’informations, consultez définition de délais d’attente pour les opérations de service de file d’attente.For more information, see Setting Timeouts for Queue Service Operations.

En-têtes de requêteRequest Headers

Le tableau suivant décrit les en-têtes de demande obligatoires ou facultatifs.The following table describes required and optional request headers.

En-tête de la demandeRequest Header DescriptionDescription
Authorization Obligatoire.Required. Spécifie le schéma d’autorisation, le nom de compte et la signature.Specifies the authorization scheme, account name, and signature. Pour plus d’informations, consultez autoriser les demandes dans le stockage Azure.For more information, see Authorize requests to Azure Storage.
Date ou x-ms-dateDate or x-ms-date Obligatoire.Required. Spécifie la date/heure en temps universel coordonné (UTC) pour la requête.Specifies the Coordinated Universal Time (UTC) for the request. Pour plus d’informations, consultez autoriser les demandes dans le stockage Azure.For more information, see Authorize requests to Azure Storage.
x-ms-version facultatif.Optional. Spécifie la version de l'opération à utiliser pour cette demande.Specifies the version of the operation to use for this request. Pour plus d’informations, consultez contrôle de version pour les services de stockage Azure.For more information, see Versioning for the Azure Storage Services.
x-ms-client-request-id facultatif.Optional. Fournit une valeur opaque générée par le client avec une limite de 1 Kio de caractères qui est enregistrée dans les journaux d’analyse lorsque la journalisation de l’analyse de stockage est activée.Provides a client-generated, opaque value with a 1 KiB character limit that is recorded in the analytics logs when storage analytics logging is enabled. L’utilisation de cet en-tête est fortement recommandée pour la mise en corrélation des activités côté client avec les requêtes reçues par le serveur.Using this header is highly recommended for correlating client-side activities with requests received by the server. Pour plus d’informations, consultez à propos de la journalisation des Storage Analytics et de la journalisation Azure : utilisation des journaux pour suivre les demandes de stockage.For more information, see About Storage Analytics Logging and Azure Logging: Using Logs to Track Storage Requests.

Corps de la demandeRequest Body

Pour spécifier une stratégie d'accès stockée, indiquez un identificateur unique et une stratégie d'accès dans le corps de la demande pour l'opération Set Queue ACL.To specify a stored access policy, provide a unique identifier and access policy in the request body for the Set Queue ACL operation.

L'élément SignedIdentifier comprend l'identificateur unique, comme indiqué dans l'élément Id, et les détails de la stratégie d'accès, comme indiqué dans l'élément AccessPolicy.The SignedIdentifier element includes the unique identifier, as specified in the Id element, and the details of the access policy, as specified in the AccessPolicy element. La longueur maximale de l'identificateur unique est de 64 caractères.The maximum length of the unique identifier is 64 characters.

Les champs Start et Expiry doivent être exprimés en heures UTC et doivent être dans un format ISO 8061 valide.The Start and Expiry fields must be expressed as UTC times and must adhere to a valid ISO 8061 format. Les formats ISO 8061 pris en charge sont notamment :Supported ISO 8061 formats include the following:

  • YYYY-MM-DD

  • YYYY-MM-DDThh:mmTZD

  • YYYY-MM-DDThh:mm:ssTZD

  • YYYY-MM-DDThh:mm:ss.ffffffTZD

Pour la partie date de ces formats, YYYY est une représentation de l'année à quatre chiffres, MM est une représentation du mois à deux chiffres et DD est une représentation du jour à deux chiffres.For the date portion of these formats, YYYY is a four-digit year representation, MM is a two-digit month representation, and DD is a two-digit day representation. Pour la partie heure, hh est la représentation de l'heure au format 24 heures, mm est la représentation des minutes à deux chiffres, ss est la représentation des secondes à deux chiffres et ffffff est la représentation des millisecondes à six chiffres.For the time portion, hh is the hour representation in 24-hour notation, mm is the two-digit minute representation, ss is the two-digit second representation, and ffffff is the six-digit millisecond representation. Un indicateur de temps T sépare les parties date et heure de la chaîne, et un indicateur de fuseau horaire TZD spécifie un fuseau horaire.A time designator T separates the date and time portions of the string, while a time zone designator TZD specifies a time zone.

<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>   
    <Id>unique-64-character-value</Id>  
    <AccessPolicy>  
      <Start>start-time</Start>  
      <Expiry>expiry-time</Expiry>  
      <Permission>abbreviated-permission-list</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  
  

Exemple de demandeSample Request

Request Syntax:  
PUT https://myaccount.queue.core.windows.net/myqueue?comp=acl HTTP/1.1  
  
Request Headers:  
x-ms-version: 2012-02-12  
x-ms-date: Sun, 25 Sep 2011 00:42:49 GMT  
Authorization: SharedKey myaccount:V47F2tYLS29MmHPhiR8FyiCny9zO5De3kVSF0RYQHmo=  
  
Request Body:  
<?xml version="1.0" encoding="utf-8"?>  
<SignedIdentifiers>  
  <SignedIdentifier>   
    <Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>  
    <AccessPolicy>  
      <Start>2009-09-28T08:49:37.0000000Z</Start>  
      <Expiry>2009-09-29T08:49:37.0000000Z</Expiry>  
      <Permission>raup</Permission>  
    </AccessPolicy>  
  </SignedIdentifier>  
</SignedIdentifiers>  
  

responseResponse

La réponse inclut un code d'état HTTP et un ensemble d'en-têtes de réponse.The response includes an HTTP status code and a set of response headers.

Code d’étatStatus Code

Une opération réussie renvoie le code d'état 204 (Aucun contenu).A successful operation returns status code 204 (No Content).

Pour plus d’informations sur les codes d’État, consultez codes d’État et d’erreur.For information about status codes, see Status and Error Codes.

En-têtes de réponseResponse Headers

La réponse de l'opération inclut les en-têtes suivants.The response for this operation includes the following headers. La réponse peut aussi inclure des en-têtes HTTP standard supplémentaires.The response may also include additional standard HTTP headers. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.All standard headers conform to the HTTP/1.1 protocol specification.

En-tête de réponseResponse header DescriptionDescription
x-ms-request-id Cet en-tête identifie de façon unique la demande qui a été effectuée et peut être utilisé pour résoudre les problèmes de la demande.This header uniquely identifies the request that was made and can be used for troubleshooting the request. Pour plus d’informations, consultez Dépannage des opérations d’API .For more information, see Troubleshooting API Operations
x-ms-version Indique la version du service de File d'attente utilisé pour exécuter la demande.Indicates the version of the Queue service used to execute the request. Cet en-tête est renvoyé pour les demandes effectuées avec la version 2009-09-19 ou une version ultérieure.This header is returned for requests made against version 2009-09-19 and later.
Date Une valeur de date/heure UTC générée par le service qui indique le moment auquel la réponse a été initiée.A UTC date/time value generated by the service that indicates the time at which the response was initiated.
x-ms-client-request-id Cet en-tête peut être utilisé pour dépanner les demandes et les réponses correspondantes.This header can be used to troubleshoot requests and corresponding responses. La valeur de cet en-tête est égale à la valeur de l' x-ms-client-request-id en-tête si elle est présente dans la demande et que la valeur est supérieure à 1024 caractères ASCII visibles.The value of this header is equal to the value of the x-ms-client-request-id header if it is present in the request and the value is at most 1024 visible ASCII characters. Si l' x-ms-client-request-id en-tête n’est pas présent dans la demande, cet en-tête ne sera pas présent dans la réponse.If the x-ms-client-request-id header is not present in the request, this header will not be present in the response.

Exemple de réponseSample Response

Response Status:  
HTTP/1.1 204 No Content  
  
Response Headers:  
Transfer-Encoding: chunked  
Date: Sun, 25 Sep 2011 22:42:55 GMT  
x-ms-version: 2012-02-12  
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0  
  

AutorisationAuthorization

Seul le propriétaire du compte peut appeler cette opération.Only the account owner may call this operation.

RemarquesRemarks

Seul le propriétaire du compte peut accéder aux ressources d'une file d'attente donnée, sauf si le propriétaire a émis une signature d'accès partagé pour une ressource au sein de la file d'attente.Only the account owner may access resources in a particular queue unless the owner has issued a Shared Access Signature for a resource within the queue.

Quand vous définissez des autorisations pour une file d'attente, les autorisations existantes sont remplacées.When you set permissions for a queue, the existing permissions are replaced. Pour mettre à jour les autorisations de la file d’attente, appelez obtenir une liste de contrôle d’accès de file d’attente pour extraire toutes les stratégies d’accès associées à la file d’attente, modifier la stratégie d’accès que vous souhaitez modifier, puis appeler Set Queue ACL avec l’ensemble complet de données pour effectuer la mise à jour.To update the queue’s permissions, call Get Queue ACL to fetch all access policies associated with the queue, modify the access policy that you wish to change, and then call Set Queue ACL with the complete set of data to perform the update.

Définition des stratégies d'accès stockéesEstablishing Stored Access Policies

Une stratégie d'accès stockée peut spécifier l'heure de début, l'heure d'expiration et les autorisations pour les signatures d'accès partagé auxquelles elle est associée.A stored access policy can specify the start time, expiry time, and permissions for the Shared Access Signatures with which it's associated. Selon la façon dont vous voulez contrôler l'accès aux ressources de votre file d'attente, vous pouvez spécifier tous ces paramètres au sein de la stratégie d'accès stockée et les omettre de l'URL pour la signature d'accès partagé.Depending on how you want to control access to your queue resource, you can specify all of these parameters within the stored access policy, and omit them from the URL for the Shared Access Signature. De cette façon, vous pouvez modifier le comportement de la signature associée à tout moment, de même que la révoquer.Doing so permits you to modify the associated signature's behavior at any time, as well as to revoke it. Vous pouvez aussi spécifier un ou plusieurs paramètres de stratégie d'accès dans la stratégie d'accès stockée et les autres dans l'URL.Or you can specify one or more of the access policy parameters within the stored access policy, and the others on the URL. Enfin, vous pouvez spécifier tous les paramètres dans l'URL.Finally, you can specify all of the parameters on the URL. Dans ce cas, vous pouvez utiliser la stratégie d'accès stockée pour révoquer la signature et non pour modifier son comportement.In this case, you can use the stored access policy to revoke the signature, but not to modify its behavior. Pour plus d’informations sur la définition de stratégies d’accès, consultez définir une stratégie d’accès stockée .See Define a stored access policy for more information about establishing access policies.

La signature d’accès partagé et la stratégie d’accès stockée doivent inclure tous les champs requis pour autoriser la signature.Together the Shared Access Signature and the stored access policy must include all fields required to authorize the signature. Si les champs obligatoires sont manquants, la demande échoue.If any required fields are missing, the request will fail. De même, si un champ est spécifié dans l'URL de signature d'accès partagé et dans la stratégie d'accès stockée, la demande échoue avec le code d'état 400 (Requête incorrecte).Likewise, if a field is specified both in the Shared Access Signature URL and in the stored access policy, the request will fail with status code 400 (Bad Request).

Notez qu'un maximum de cinq stratégies d'accès séparées peuvent être définies pour une file d'attente à un moment donné.Note that at most five separate access policies can be set for a given queue at any time. Si plus de cinq stratégies d'accès sont passées dans le corps de la demande, le service renvoie le code d'état 400 (Demande incorrecte).If more than five access policies are passed in the request body, then the service returns status code 400 (Bad Request).

Notes

Lorsque vous établissez une stratégie d'accès stockée sur une file d'attente, son application peut prendre trente secondes.When you establish a stored access policy on a queue, it may take up to 30 seconds to take effect. Au cours de cet intervalle, une signature d'accès partagé associée à la stratégie d'accès stockée échoue avec le code d'état 403 (Interdit), jusqu'à ce que la stratégie d'accès devienne active.During this interval, a shared access signature that is associated with the stored access policy will fail with status code 403 (Forbidden), until the access policy becomes active.

Voir aussiSee Also

Définir une stratégie d’accès stockée Define a stored access policy
Récupérer une liste de contrôle d’accès Get Queue ACL
Autoriser les demandes au stockage Azure Authorize requests to Azure Storage
Codes d’État et d’erreurStatus and Error Codes