Opgeslagen toegangsbeleid definiëren

Een opgeslagen toegangsbeleid biedt een extra niveau van controle over shared access signatures (SASs) op serviceniveau aan de serverzijde. Het instellen van een opgeslagen toegangsbeleid dient om handtekeningen voor gedeelde toegang te groeperen en aanvullende beperkingen te bieden voor handtekeningen die zijn gebonden aan het beleid.

U kunt een opgeslagen toegangsbeleid gebruiken om de begintijd, verlooptijd of machtigingen voor een handtekening te wijzigen. U kunt ook een opgeslagen toegangsbeleid gebruiken om een handtekening in te trekken nadat deze is uitgegeven.

De volgende opslagresources ondersteunen beleid voor opgeslagen toegang:

  • Blobcontainers
  • Bestandsshares
  • Wachtrijen
  • Tabellen

Notitie

Een opgeslagen toegangsbeleid voor een container kan worden gekoppeld aan een shared access signature die machtigingen verleent aan de container zelf of aan de blobs die deze bevat. Op dezelfde manier kan een opgeslagen toegangsbeleid op een bestandsshare worden gekoppeld aan een shared access signature die machtigingen verleent aan de share zelf of aan de bestanden die deze bevat.

Opgeslagen toegangsbeleid wordt niet ondersteund voor de SAS voor gebruikersdelegatie of de account-SAS.

Een opgeslagen toegangsbeleid maken of wijzigen

Het toegangsbeleid voor een shared access signature bestaat uit de begintijd, verlooptijd en machtigingen voor de handtekening. U kunt een van de volgende opties opgeven of deze combineren:

  • Al deze parameters voor de handtekening-URI en geen voor het opgeslagen toegangsbeleid
  • Al deze parameters voor het opgeslagen toegangsbeleid en geen voor de URI

U kunt echter geen parameter opgeven voor zowel het SAS-token als het opgeslagen toegangsbeleid.

Als u een opgeslagen toegangsbeleid wilt maken of wijzigen, roept u de Set ACL bewerking voor de resource aan (zie Set Container ACL, Set Queue ACL, Set Table ACL of Set Share ACL) met een aanvraagbody die de voorwaarden van het toegangsbeleid specificeert. De hoofdtekst van de aanvraag bevat een unieke ondertekende id van maximaal 64 tekens. De hoofdtekst van de aanvraag bevat ook optionele parameters van het toegangsbeleid, als volgt:

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

U kunt maximaal vijf toegangsbeleidsregels instellen voor een container, tabel, wachtrij of share tegelijk. Elk SignedIdentifier veld, met het unieke Id veld, komt overeen met één toegangsbeleid. Als u meer dan vijf toegangsbeleidsregels tegelijk probeert in te stellen, retourneert de service statuscode 400 (Ongeldige aanvraag).

Notitie

Wanneer u een opgeslagen toegangsbeleid voor een container, tabel, wachtrij of share maakt of bijwerkt, kan het tot 30 seconden duren voordat de wijziging van kracht wordt. Tijdens dit interval kunnen aanvragen voor een shared access signature die is gekoppeld aan het opgeslagen toegangsbeleid mislukken met statuscode 403 (Verboden), totdat het toegangsbeleid actief wordt.

U kunt geen bereikbeperkingen opgeven voor tabelentiteiten (startpk, startrk, endpken endrk) in een opgeslagen toegangsbeleid.

Opgeslagen toegangsbeleid wijzigen of intrekken

Als u de parameters van een opgeslagen toegangsbeleid wilt wijzigen, kunt u de bewerking toegangsbeheerlijst (ACL) aanroepen voor het resourcetype om het bestaande beleid te vervangen. Geef in die bewerking een nieuwe begintijd, verlooptijd of set machtigingen op.

Als uw bestaande beleid bijvoorbeeld lees- en schrijfmachtigingen verleent aan een resource, kunt u deze wijzigen om alleen leesmachtigingen te verlenen voor alle toekomstige aanvragen. In dit geval is de ondertekende id van het nieuwe beleid, zoals opgegeven in het ID veld, identiek aan de ondertekende id van het beleid dat u vervangt.

Als u een opgeslagen toegangsbeleid wilt intrekken, kunt u het verwijderen, de naam ervan wijzigen door de ondertekende id te wijzigen of de verlooptijd wijzigen in een waarde in het verleden. Als u de ondertekende id wijzigt, worden de koppelingen tussen bestaande handtekeningen en het opgeslagen toegangsbeleid verbroken. Als u de verlooptijd wijzigt in een waarde in het verleden, verlopen alle bijbehorende handtekeningen. Als u het opgeslagen toegangsbeleid verwijdert of wijzigt, is dit onmiddellijk van invloed op alle handtekeningen voor gedeelde toegang die eraan zijn gekoppeld.

Als u één toegangsbeleid wilt verwijderen, roept u de bewerking van Set ACL de resource aan. Geef de set ondertekende id's door die u op de container wilt onderhouden. Als u alle toegangsbeleidsregels uit de resource wilt verwijderen, roept u de Set ACL bewerking aan met een lege aanvraagbody.

Zie ook