Ange tabell-ACL
Åtgärden Set Table ACL
anger lagrade åtkomstprinciper för tabellen som kan användas med signaturer för delad åtkomst. Mer information finns i Definiera en lagrad åtkomstprincip.
Anteckning
Åtgärden Set Table ACL
är tillgänglig i version 2012-02-12 och senare.
Anteckning
En åtkomstkontrollista (ACL) är en lista över åtkomstkontrollposter (ACL). Varje ACE i en ACL identifierar en förvaltare och anger de åtkomsträttigheter som tillåts, nekas eller granskas för den förvaltaren. Mer information finns i Åtkomstkontrollistor.
Förfrågan
Du kan skapa begäran på Set Table ACL
följande sätt. Vi rekommenderar HTTPS. Ersätt myaccount med namnet på ditt lagringskonto.
Metod | URI för förfrågan | HTTP-version |
---|---|---|
PUT |
https://myaccount.table.core.windows.net/mytable?comp=acl |
HTTP/1.1 |
Emulerad lagringstjänst-URI
När du gör en begäran mot den emulerade lagringstjänsten anger du emulatorns värdnamn och Azure Table Storage-porten som 127.0.0.1:10002
. Lägg sedan till namnet på det emulerade lagringskontot.
Metod | URI för förfrågan | HTTP-version |
---|---|---|
PUT |
http://127.0.0.1:10002/devstoreaccount1/mytable?comp=acl |
HTTP/1.1 |
Mer information finns i Använda Azurite-emulatorn för lokal Azure Storage-utveckling.
URI-parametrar
Du kan ange följande ytterligare parametrar på begärande-URI:n:
Parameter | Beskrivning |
---|---|
timeout |
Valfritt. Uttryckt i sekunder. Mer information finns i Ange tidsgränser för Table Storage-åtgärder. |
Begärandehuvuden
I följande tabell beskrivs obligatoriska och valfria begärandehuvuden:
Begärandehuvud | Beskrivning |
---|---|
Authorization |
Krävs. Anger auktoriseringsschema, kontonamn och signatur. Mer information finns i Auktorisera begäranden till Azure Storage. |
Date eller x-ms-date |
Krävs. Anger Coordinated Universal Time (UTC) för begäran. Mer information finns i Auktorisera begäranden till Azure Storage. |
x-ms-version |
Valfritt. Anger vilken version av åtgärden som ska användas för den här begäran. Mer information finns i Versionshantering för Azure Storage-tjänsterna. |
x-ms-client-request-id |
Valfritt. Tillhandahåller ett klientgenererat, täckande värde med en teckengräns på 1 kibibyte (KiB) som registreras i Lagringsanalys loggarna när loggning har konfigurerats. Vi rekommenderar starkt att du använder det här huvudet för att korrelera aktiviteter på klientsidan med begäranden som servern tar emot. |
Begärandetext
Om du vill ange en lagrad åtkomstprincip anger du en unik identifierare och åtkomstprincip i begärandetexten Set Table ACL
för åtgärden.
Elementet SignedIdentifier
innehåller den unika identifieraren, enligt vad som anges i elementet Id
.
SignedIdentifier
innehåller även information om åtkomstprincipen, enligt vad som anges i elementet AccessPolicy
. Den maximala längden för den unika identifieraren är 64 tecken.
Fälten Start
och Expiry
måste uttryckas som UTC-tider och måste följa ett giltigt ISO 8061-format. ISO 8061-format som stöds är:
YYYY-MM-DD
YYYY-MM-DDThh:mmTZD
YYYY-MM-DDThh:mm:ssTZD
YYYY-MM-DDThh:mm:ss.ffffffTZD
För datumdelen av dessa format YYYY
är en fyrsiffrig årsrepresentation, MM
är en tvåsiffrig månadsrepresentation och DD
en tvåsiffrig dagrepresentation. För tidsdelen hh
är timrepresentationen i 24-timmarsnotation, mm
är den tvåsiffriga minutrepresentationen, ss
är den tvåsiffriga andra representationen och ffffff
är den sexsiffriga millisekundersrepresentationen. Tidsdesignaren T
separerar datum- och tidsdelarna i strängen. Tidszonsdesignatorn TZD
anger en tidszon.
<?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>
Exempelbegäran
Request Syntax:
PUT https://myaccount.table.core.windows.net/mytable?comp=acl HTTP/1.1
Request Headers:
x-ms-version: 2013-08-15
x-ms-date: Mon, 25 Nov 2013 00:42:49 GMT
Authorization: SharedKey myaccount:V47F2tYLS29MmHPhiR8FyiCny9zO5De3kVSF0RYQHmo=
Request Body:
<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
<SignedIdentifier>
<Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>
<AccessPolicy>
<Start>2013-11-26T08:49:37.0000000Z</Start>
<Expiry>2013-11-27T08:49:37.0000000Z</Expiry>
<Permission>raud</Permission>
</AccessPolicy>
</SignedIdentifier>
</SignedIdentifiers>
Svarsåtgärder
Svaret innehåller en HTTP-statuskod och en uppsättning svarshuvuden.
Statuskod
En lyckad åtgärd returnerar statuskod 204 (inget innehåll).
Information om statuskoder finns i Status och felkoder.
Svarshuvuden
Svaret för den här åtgärden innehåller följande rubriker. Svaret kan också innehålla ytterligare HTTP-standardhuvuden. Alla standardhuvuden överensstämmer med http/1.1-protokollspecifikationen.
Svarsrubrik | Description |
---|---|
x-ms-request-id |
Identifierar begäran som gjordes unikt. Du kan också använda den för att felsöka begäran. Mer information finns i Felsöka API-åtgärder. |
x-ms-version |
Anger vilken version av Table Storage som används för att köra begäran. Det här huvudet returneras för begäranden som görs mot version 2009-09-19 och senare. |
Date |
Ett datum-/tidsvärde för UTC som anger den tid då tjänsten skickade svaret. |
x-ms-client-request-id |
Kan användas för att felsöka begäranden och motsvarande svar. Värdet för det här huvudet är lika med värdet x-ms-client-request-id för rubriken, om det finns i begäran och värdet är högst 1 024 synliga ASCII-tecken. Om huvudet x-ms-client-request-id inte finns i begäran kommer det här huvudet inte att finnas i svaret. |
Exempelsvar
Response Status:
HTTP/1.1 204 No Content
Response Headers:
Transfer-Encoding: chunked
Date: Mon, 25 Nov 2013 22:42:55 GMT
x-ms-version: 2013-08-15
Server: Windows-Azure-Table/1.0 Microsoft-HTTPAPI/2.0
Auktorisering
Endast kontoinnehavaren kan anropa den här åtgärden.
Kommentarer
Endast kontoinnehavaren kan komma åt resurser i en viss tabell, såvida inte ägaren har utfärdat en signatur för delad åtkomst för en resurs i tabellen.
När du anger behörigheter för en tabell ersätts de befintliga behörigheterna. Om du vill uppdatera tabellens behörigheter anropar du Hämta tabell-ACL för att hämta alla åtkomstprinciper som är associerade med tabellen. Ändra den åtkomstprincip som du vill ändra och anropa Set Table ACL
sedan med den fullständiga datauppsättningen för att utföra uppdateringen.
Upprätta lagrade åtkomstprinciper
En lagrad åtkomstprincip kan ange starttid, förfallotid och behörigheter för de signaturer för delad åtkomst som den är associerad med. Beroende på hur du vill styra åtkomsten till resursen eller filresursen kan du:
- Ange alla dessa parametrar i den lagrade åtkomstprincipen och utelämna dem från URL:en för signaturen för delad åtkomst. På så sätt kan du ändra den associerade signaturens beteende eller återkalla den när som helst.
- Ange en eller flera av åtkomstprincipparametrarna i den lagrade åtkomstprincipen och ange de andra parametrarna på URL:en.
- Ange alla parametrar på URL:en. I det här fallet kan du använda den lagrade åtkomstprincipen för att återkalla signaturen, men inte ändra dess beteende.
Mer information om hur du upprättar åtkomstprinciper finns i Definiera en lagrad åtkomstprincip.
Tillsammans måste signaturen för delad åtkomst och den lagrade åtkomstprincipen innehålla alla fält som krävs för att auktorisera signaturen. Om obligatoriska fält saknas misslyckas begäran. På samma sätt misslyckas begäran med statuskoden 400 (felaktig begäran) om ett fält anges både i url:en för signatur för delad åtkomst och i den lagrade åtkomstprincipen. Mer information om fälten som skapar en signatur för delad åtkomst finns i Skapa en tjänst-SAS.
Du kan ange högst fem separata åtkomstprinciper för en tabell när som helst. Om fler än fem åtkomstprinciper skickas i begärandetexten returnerar tjänsten statuskoden 400 (felaktig begäran).
Anteckning
När du upprättar en lagrad åtkomstprincip i en tabell kan det ta upp till 30 sekunder att börja gälla. Under det här intervallet misslyckas en signatur för delad åtkomst som är associerad med den lagrade åtkomstprincipen med statuskoden 403 (Förbjuden) tills åtkomstprincipen blir aktiv.
Se även
Definiera en lagrad åtkomstprincip
Skapa och använda en signatur för delad åtkomst
Delegera åtkomst med en signatur för delad åtkomst
Hämta tabell-ACL
Auktorisera begäranden till Azure Storage
Status- och felkoder