Ange resurs-ACL
Åtgärden Set Share ACL
anger en lagrad åtkomstprincip för användning med signaturer för delad åtkomst. Mer information om hur du ställer in åtkomstprinciper finns i Bevilja begränsad åtkomst till Azure Storage-resurser med hjälp av signaturer för delad åtkomst.
Protokolltillgänglighet
Aktiverat filresursprotokoll | Tillgängligt |
---|---|
SMB | |
NFS |
Förfrågan
Du kan skapa begäran på Set Share 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.file.core.windows.net/myshare?restype=share&comp=acl |
HTTP/1.1 |
URI-parametrar
Du kan ange följande ytterligare parametrar för begärande-URI:n:
Parameter | Beskrivning |
---|---|
timeout |
Valfritt. Parametern timeout uttrycks i sekunder. Mer information finns i Ange tidsgränser för Azure Files å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 |
Krävs för alla auktoriserade begäranden. Anger vilken version av åtgärden som ska användas för den här begäran. Den här åtgärden är endast tillgänglig i version 2015-02-21 och senare. 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 kibibyte-teckengräns (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. Mer information finns i Övervaka Azure Blob Storage. |
x-ms-lease-id:<ID> |
Krävs om målfilresursen har ett aktivt lån. Tillgänglig för version 2020-02-10 och senare. Om begäran inte innehåller låne-ID:t eller om det inte är giltigt misslyckas åtgärden med statuskoden 412 (villkoret misslyckades). Om det här huvudet har angetts och målfilresursen för närvarande inte har ett aktivt lån misslyckas åtgärden med statuskoden 412 (villkoret misslyckades). |
Begärandetext
Ange en lagrad åtkomstprincip genom att ange en unik identifierare och åtkomstprincip i begärandetexten Set Share 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.fffffffTZD
För datumdelen av dessa format är en fyrsiffrig YYYY
årsrepresentation, MM
en tvåsiffrig månadsrepresentation och DD
en tvåsiffrig dagrepresentation. För tidsdelen är hh
timrepresentationen i 24-timmarsnotation, mm
är den tvåsiffriga minutrepresentationen, ss
är den tvåsiffriga andra representationen och fffffff
är den sjusiffriga 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.file.core.windows.net/myshare?restype=share&comp=acl HTTP/1.1
Request Headers:
x-ms-version: 2015-02-21
x-ms-date: <date>
Authorization: SharedKey myaccount:V47F2tYLS29MmHPhiR8FyiCny9zO5De3kVSF0RYQHmo=
Request Body:
<?xml version="1.0" encoding="utf-8"?>
<SignedIdentifiers>
<SignedIdentifier>
<Id>MTIzNDU2Nzg5MDEyMzQ1Njc4OTAxMjM0NTY3ODkwMTI=</Id>
<AccessPolicy>
<Start>2015-07-01T08:49:37.0000000Z</Start>
<Expiry>2015-07-02T08:49:37.0000000Z</Expiry>
<Permission>rwd</Permission>
</AccessPolicy>
</SignedIdentifier>
</SignedIdentifiers>
Svarsåtgärder
Svaret innehåller en HTTP-statuskod och en uppsättning svarshuvuden.
Statuskod
En lyckad åtgärd returnerar statuskoden 200 (OK).
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 |
---|---|
ETag |
Returnerar datum och tid då containern senast ändrades. Datumformatet följer RFC 1123. Mer information finns i Representation of date/time values in headers (Representation av datum/tid-värden i sidhuvuden). |
Last-Modified |
Alla åtgärder som ändrar resursen eller dess egenskaper eller metadata uppdaterar den senaste ändrade tiden, inklusive att ange filens behörigheter. Åtgärder på filer påverkar inte resursens senast ändrade tid. |
x-ms-request-id |
Identifierar unikt den begäran som gjordes och kan användas för att felsöka begäran. Mer information finns i Felsöka API-åtgärder. |
x-ms-version |
Anger vilken version av Azure Files som användes för att köra begäran. |
Date eller x-ms-date |
Ett UTC-datum/tid-värde 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 huvudet, om det finns i begäran och värdet är högst 1 024 synliga ASCII-tecken.
x-ms-client-request-id Om rubriken inte finns i begäran visas inte det här huvudet i svaret. |
Exempelsvar
Response Status:
HTTP/1.1 200 OK
Response Headers:
Transfer-Encoding: chunked
Date: <date>
ETag: "0x8CB171613397EAB"
Last-Modified: <date>
x-ms-version: 2015-02-21
Server: Windows-Azure-File/1.0 Microsoft-HTTPAPI/2.0
Auktorisering
Endast kontoägaren kan anropa den här åtgärden.
Kommentarer
Endast kontoägaren kan komma åt resurser i en viss resurs, såvida inte något av följande villkor är sant:
- Ägaren har angett att resursresurser är tillgängliga för offentlig åtkomst genom att ange behörigheterna för resursen.
- Ägaren har utfärdat en signatur för delad åtkomst för en resurs i resursen.
När du anger behörigheter för en container ersätts de befintliga behörigheterna. Om du vill uppdatera containerns behörigheter anropar du Hämta resurs-ACL för att hämta alla åtkomstprinciper som är associerade med containern. Ändra den åtkomstprincip som du vill ändra och anropa Set Share ACL
sedan med den fullständiga datauppsättningen för att utföra uppdateringen.
Upprätta åtkomstprinciper på resursnivå
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 för att ändra dess beteende.
Mer information om hur du ställer in åtkomstprinciper finns i Bevilja begränsad åtkomst till Azure Storage-resurser med hjälp av signaturer för delad åtkomst.
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 Använda en signatur för delad åtkomst.
Du kan ange högst fem separata åtkomstprinciper för en resurs när som helst. Om fler än fem åtkomstprinciper skickas i begärandetexten returnerar tjänsten statuskoden 400 (felaktig begäran).
En signatur för delad åtkomst kan utfärdas på en resurs eller en fil oavsett om containerdata är tillgängliga för anonym läsåtkomst. En signatur för delad åtkomst ger mer kontroll över hur, när och till vem en resurs görs tillgänglig.
Du kan inte ange eller hämta en åtkomstprincip för en resursögonblicksbild. Om du försöker ange en åtkomstprincip returnerar tjänsten statuskoden 400 (InvalidQueryParameterValue).
Anteckning
När du upprättar en lagrad åtkomstprincip för en container 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.