Delen via


Wachtrij-ACL instellen

De Set Queue ACL bewerking stelt opgeslagen toegangsbeleid in voor de wachtrij die kan worden gebruikt met een SAS (Shared Access Signature). Zie Een opgeslagen toegangsbeleid definiërenvoor meer informatie.

Notitie

De Set Queue ACL bewerking is beschikbaar in versie 2012-02-12 en hoger.

Verzoek

U kunt de Set Queue ACL aanvraag als volgt samenstellen. U wordt aangeraden HTTPS te gebruiken. Vervang myaccount- door de naam van uw opslagaccount:

Methode Aanvraag-URI HTTP-versie
PUT https://myaccount.queue.core.windows.net/myqueue?comp=acl HTTP/1.1

Emulated storage-serviceaanvraag

Wanneer u een aanvraag indient voor de geëmuleerde opslagservice, geeft u de hostnaam van de emulator en de wachtrijservicepoort op als 127.0.0.1:10001, gevolgd door de geëmuleerde naam van het opslagaccount:

Methode Aanvraag-URI HTTP-versie
PUT http://127.0.0.1:10001/devstoreaccount1/myqueue?comp=acl HTTP/1.1

Zie De Azurite-emulator gebruiken voor lokale Azure Storage-ontwikkelingvoor meer informatie.

URI-parameters

U kunt de volgende aanvullende parameters opgeven voor de aanvraag-URI:

Parameter Beschrijving
timeout Facultatief. De parameter timeout wordt uitgedrukt in seconden. Zie Time-outs instellen voor wachtrijservicebewerkingenvoor meer informatie.

Aanvraagheaders

De vereiste en optionele aanvraagheaders worden beschreven in de volgende tabel:

Aanvraagheader Beschrijving
Authorization Vereist. Hiermee geeft u het autorisatieschema, de accountnaam en de handtekening op. Zie Aanvragen autoriseren voor Azure Storagevoor meer informatie.
Date of x-ms-date Vereist. Hiermee geeft u de Coordinated Universal Time (UTC) voor de aanvraag. Zie Aanvragen autoriseren voor Azure Storagevoor meer informatie.
x-ms-version Facultatief. Hiermee geeft u de versie van de bewerking die moet worden gebruikt voor deze aanvraag. Zie Versiebeheer voor de Azure Storage-servicesvoor meer informatie.
x-ms-client-request-id Facultatief. Biedt een door de client gegenereerde, ondoorzichtige waarde met een tekenlimiet van 1 kibibyte (KiB) die wordt vastgelegd in de logboeken wanneer logboekregistratie is geconfigureerd. We raden u ten zeerste aan deze header te gebruiken om activiteiten aan de clientzijde te correleren met aanvragen die de server ontvangt. Zie Azure Queue Storage-bewaken voor meer informatie.

Aanvraagbody

Als u een opgeslagen toegangsbeleid wilt opgeven, geeft u een unieke id en toegangsbeleid op in de aanvraagbody voor de Set Queue ACL bewerking.

Het element SignedIdentifier bevat de unieke id, zoals opgegeven in het Id-element en de details van het toegangsbeleid, zoals opgegeven in het AccessPolicy-element. De maximale lengte van de unieke id is 64 tekens.

De velden Start en Expiry moeten worden uitgedrukt als UTC-tijden en moeten voldoen aan een geldige ISO 8061-indeling. Ondersteunde ISO 8061-indelingen zijn onder andere:

  • YYYY-MM-DD
  • YYYY-MM-DDThh:mmTZD
  • YYYY-MM-DDThh:mm:ssTZD
  • YYYY-MM-DDThh:mm:ss.ffffffTZD

Voor het datumgedeelte van deze notaties is YYYY een jaarweergave van vier cijfers, MM een maandweergave van twee cijfers is en DD een dagweergave van twee cijfers is. Voor het tijdgedeelte is hh de uurweergave in de notatie van 24 uur, mm de weergave van twee cijfers is, ss de tweede weergave van twee cijfers is en ffffff de zescijferige milliseconden vertegenwoordigt. Een tijdsontwerper T scheidt de datum- en tijdgedeelten van de tekenreeks en een tijdzone-ontwerper TZD een tijdzone opgeeft.

<?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>  
  

Voorbeeldaanvraag

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>  
  

Antwoord

Het antwoord bevat een HTTP-statuscode en een set antwoordheaders.

Statuscode

Een geslaagde bewerking retourneert statuscode 204 (geen inhoud).

Zie Status en foutcodesvoor meer informatie over statuscodes.

Antwoordheaders

Het antwoord voor deze bewerking bevat de volgende headers. Het antwoord kan ook aanvullende standaard HTTP-headers bevatten. Alle standaardheaders voldoen aan de HTTP/1.1-protocolspecificatie.

Antwoordheader Beschrijving
x-ms-request-id Identificeer de aanvraag die is gemaakt en kan worden gebruikt om problemen met de aanvraag op te lossen. Zie Problemen met API-bewerkingen oplossenvoor meer informatie.
x-ms-version Geeft de queue-serviceversie aan die is gebruikt om de aanvraag uit te voeren. Deze header wordt geretourneerd voor aanvragen die zijn gedaan op basis van versie 2009-09-19 en hoger.
Date Een UTC-datum/tijdwaarde die wordt gegenereerd door de service, wat de tijd aangeeft waarop het antwoord is gestart.
x-ms-client-request-id Deze header kan worden gebruikt om problemen met aanvragen en bijbehorende antwoorden op te lossen. De waarde van deze header is gelijk aan de waarde van de x-ms-client-request-id header als deze aanwezig is in de aanvraag en de waarde niet meer dan 1024 zichtbare ASCII-tekens bevat. Als de x-ms-client-request-id header niet aanwezig is in de aanvraag, is deze niet aanwezig in het antwoord.

Voorbeeldantwoord

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  
  

Machtiging

Autorisatie is vereist bij het aanroepen van een bewerking voor gegevenstoegang in Azure Storage. U kunt de Set Queue ACL bewerking autoriseren met behulp van Microsoft Entra ID of Gedeelde sleutel.

Als u de Set Queue ACL-bewerking wilt autoriseren met behulp van Microsoft Entra ID, heeft de beveiligingsprincipaal een aangepaste Azure RBAC-rol nodig die de volgende RBAC-actie bevat: Microsoft.Storage/storageAccounts/queueServices/queues/setAcl/action.

Belangrijk

Microsoft raadt aan om Microsoft Entra ID met beheerde identiteiten te gebruiken om aanvragen voor Azure Storage te autoriseren. Microsoft Entra ID biedt superieure beveiliging en gebruiksgemak in vergelijking met autorisatie van gedeelde sleutels.

Opmerkingen

Wanneer u machtigingen voor een wachtrij instelt, worden de bestaande machtigingen vervangen. Als u de machtigingen van de wachtrij wilt bijwerken, roept u Wachtrij-ACL ophalen aan om alle toegangsbeleidsregels op te halen die aan de wachtrij zijn gekoppeld. Wijzig het toegangsbeleid dat u wilt wijzigen en roep Set Queue ACL aan met de volledige set gegevens om de update uit te voeren.

opgeslagen toegangsbeleid tot stand brengen

Een opgeslagen toegangsbeleid kan de begintijd, verlooptijd en machtigingen opgeven voor de handtekeningen voor gedeelde toegang waaraan het is gekoppeld. Afhankelijk van hoe u de toegang tot uw wachtrijresource wilt beheren, kunt u al deze parameters in het opgeslagen toegangsbeleid opgeven en weglaten uit de URL voor de shared access Signature. Hierdoor kunt u het gedrag van de bijbehorende handtekening op elk gewenst moment wijzigen of intrekken. U kunt ook een of meer toegangsbeleidsparameters opgeven in het opgeslagen toegangsbeleid en de andere parameters op de URL. Ten slotte kunt u alle parameters op de URL opgeven. In dit geval kunt u het opgeslagen toegangsbeleid gebruiken om de handtekening in te trekken, maar niet om het gedrag ervan te wijzigen. Zie Een opgeslagen toegangsbeleid definiërenvoor meer informatie over het tot stand brengen van toegangsbeleid.

Samen moeten de handtekening voor gedeelde toegang en het opgeslagen toegangsbeleid alle velden bevatten die nodig zijn om de handtekening te autoriseren. Als er vereiste velden ontbreken, mislukt de aanvraag. Als een veld zowel in de shared access signature-URL als in het opgeslagen toegangsbeleid is opgegeven, mislukt de aanvraag met statuscode 400 (Ongeldige aanvraag).

Maximaal vijf afzonderlijke toegangsbeleidsregels kunnen op elk gewenst moment worden ingesteld voor één wachtrij. Als er meer dan vijf toegangsbeleidsregels worden doorgegeven in de aanvraagbody, retourneert de service statuscode 400 (Ongeldige aanvraag).

Wanneer u een opgeslagen toegangsbeleid voor een wachtrij tot stand brengt, kan het tot 30 seconden duren voordat het van kracht wordt. Tijdens dit interval mislukt een handtekening voor gedeelde toegang die is gekoppeld aan het opgeslagen toegangsbeleid met statuscode 403 (Verboden), totdat het toegangsbeleid actief wordt.

Zie ook

Een opgeslagen toegangsbeleid definiëren
Wachtrij-ACL ophalen
aanvragen autoriseren voor Azure Storage
status en foutcodes