Sas-exempel för tjänst
Det här avsnittet visar exempel på användning av signaturer för delad åtkomst med REST-API:et. Med signaturer för delad åtkomst kan du ge åtkomsträttigheter till containrar och blobbar, tabeller, köer eller filer. Genom att tillhandahålla en signatur för delad åtkomst kan du ge användare begränsad åtkomst till en specifik container, blob, kö, tabell eller tabellentitetsintervall under en angiven tidsperiod. Fullständig information om hur du skapar, parsar och använder signaturer för delad åtkomst finns i Delegera åtkomst med en signatur för delad åtkomst. Information om hur du använder .NET Storage-klientbiblioteket för att skapa signaturer för delad åtkomst finns i Skapa och använda en signatur för delad åtkomst.
Blob-exempel
Det här avsnittet innehåller exempel som visar signaturer för delad åtkomst för REST-åtgärder på blobar.
Exempel: Hämta en blob med hjälp av en containers signatur för delad åtkomst
Versioner före 2013-08-15
I följande exempel visas hur du skapar en signatur för delad åtkomst för läsåtkomst i en container.
De signerade signaturfälten som ska bestå av URL:en inkluderar:
signedstart=2009-02-09
signedexpiry=2009-02-10
signedresource=c
signedpermissions=r
signature=dD80ihBh5jfNpymO5Hg1IdiJIEvHcJpCMiCMnN/RnbI=
signedidentifier=YWJjZGVmZw==
signedversion=2012-02-12
Signaturen konstrueras på följande sätt:
StringToSign = r + \n
2009-02-09 + \n
2009-02-10 + \n
/myaccount/pictures + \n
YWJjZGVmZw== + \n
2012-02-12
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = dD80ihBh5jfNpymO5Hg1IdiJIEvHcJpCMiCMnN/RnbI=
Begärande-URL:en anger läsbehörigheter för containern pictures
för det angivna intervallet. Resursen som representeras av begärande-URL:en är en blob, men signaturen för delad åtkomst anges i containern. Det går också att ange det på själva bloben.
GET https://myaccount.blob.core.windows.net/pictures/profile.jpg?sv=2012-02-12&st=2009-02-09&se=2009-02-10&sr=c&sp=r&si=YWJjZGVmZw%3d%3d&sig=dD80ihBh5jfNpymO5Hg1IdiJIEvHcJpCMiCMnN%2fRnbI%3d
HTTP/1.1
Host: myaccount.blob.core.windows.net
x-ms-date: <date>
Version 2013-08-15 och senare
I följande exempel visas hur du skapar en signatur för delad åtkomst för läsåtkomst i en container med version 2013-08-15 av lagringstjänsterna.
Version 2013-08-15 introducerar nya frågeparametrar som gör det möjligt för klienten som utfärdar begäran att åsidosätta svarshuvuden för den här signaturen för delad åtkomst.
Svarshuvudena och motsvarande frågeparametrar är följande:
Svarshuvudnamn | Motsvarande SAS-frågeparameter |
---|---|
Cache-Control |
rscc |
Content-Disposition |
rscd |
Content-Encoding |
rsce |
Content-Language |
rscl |
Content-Type |
rsct |
Fälten som utgör sträng-till-signera för signaturen inkluderar:
signedstart=2013-08-16
signedexpiry=2013-08-17
signedresource=c
signedpermissions=r
signedidentifier=YWJjZGVmZw==
signedversion=2013-08-15
responsecontent-disposition=file; attachment
responsecontent-type=binary
Sträng-till-tecken är konstruerad på följande sätt:
StringToSign = r + \n
2013-08-16 + \n
2013-08-17 + \n
/myaccount/pictures + \n
YWJjZGVmZw== + \n
2013-08-15 + \n
+ \n
file; attachment + \n
+ \n
+ \n
binary
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = a39+YozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ=
Signaturen för delad åtkomst anger läsbehörigheter för bildcontainern för det angivna intervallet. Resursen som representeras av begärande-URL:en är en blob, men signaturen för delad åtkomst anges i containern. Det går också att ange det på själva bloben.
GET https://myaccount.blob.core.windows.net/pictures/profile.jpg?sv=2013-08-15&st=2013-08-16&se=2013-08-17&sr=c&sp=r&rscd=file;%20attachment&rsct=binary &sig=YWJjZGVmZw%3d%3d&sig=a39%2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d HTTP/1.1
För en klient som gör en begäran med den här signaturen körs åtgärden Hämta blob om följande villkor uppfylls:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term för en associerad lagrad åtkomstprincip.
Den blob som anges av begäran (/myaccount/pictures/profile.jpg) finns i containern som anges som den signerade resursen (/myaccount/pictures).
Om du anger rsct=binary
och rscd=file; attachment
på signaturen för delad åtkomst åsidosätts rubrikerna för innehållstyp respektive innehållsborttagning i svaret.
Ett lyckat svar för en begäran som görs med den här signaturen för delad åtkomst liknar följande:
Status Response:
HTTP/1.1 200 OK
Response Headers:
x-ms-blob-type: BlockBlob
Content-Length: 11
Content-Type: binary
Content-Disposition: file; attachment
ETag: "0x8CB171DBEAD6A6B"
x-ms-version: 2013-08-15
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
Exempel: Ladda upp en blob med hjälp av en containers signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för att skriva en blob. I det här exemplet skapar vi en signatur som ger skrivbehörighet för alla blobar i containern. Sedan använder vi signaturen för delad åtkomst för att skriva till en blob i containern.
De signerade fälten som ska bestå av URL:en inkluderar:
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedresource=c
signedpermissions=w
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
Signaturen konstrueras på följande sätt:
StringToSign = w + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
/myaccount/pictures + \n
YWJjZGVmZw== + \n
2013-08-15
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = Rcp6gQRfV7WDlURdVTqCa+qEArnfJxDgE+KH3TCChIs=
Begärande-URL:en anger skrivbehörigheter för containern pictures
för det angivna intervallet. Resursen som representeras av begärande-URL:en är en blob, men signaturen för delad åtkomst anges i containern. Det går också att ange det på själva bloben.
PUT https://myaccount.blob.core.windows.net/pictures/photo.jpg?sv=2015-02-21&st=2015-07-01T08%3a49Z&se=2015-07-02T08%3a49Z&
sr=c&sp=w&si=YWJjZGVmZw%3d%3d&sig=Rcp6gQRfV7WDlURdVTqCa%2bqEArnfJxDgE%2bKH3TCChIs%3d HTTP/1.1
Host: myaccount.blob.core.windows.net
Content-Length: 12
Hello World.
Med den här signaturen anropas Put Blob om följande villkor uppfylls:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term för en associerad lagrad åtkomstprincip.
Den blob som anges av begäran (/myaccount/pictures/photo.jpg) finns i containern som anges som den signerade resursen (/myaccount/pictures).
Exempel: Ta bort blob med en blobs signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst som ger borttagningsbehörighet för en blob och tar bort en blob.
Varning
Observera att en signatur för delad åtkomst för en DELETE-åtgärd bör distribueras på ett omdömesgillt sätt, eftersom det kan få oavsiktliga konsekvenser om en klient tillåts ta bort data.
De signerade signaturfälten som ska bestå av URL:en inkluderar:
signedstart=2015-07-01T08:49:37.0000000Z
signedexpiry=2015-07-02T08:49:37.0000000Z
signedresource=b
signedpermissions=d
signature=+SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
Signaturen konstrueras på följande sätt:
StringToSign = d + \n
2015-07-01T08:49:37.0000000Z + \n
2015-07-02T08:49:37.0000000Z + \n
blob/myaccount/pictures/profile.jpg + \n
YWJjZGVmZw==
2015-02-21
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = +SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
Begärande-URL:en anger borttagningsbehörigheter för bildcontainern för det angivna intervallet. Resursen som representeras av begärande-URL:en är en blob och signaturen för delad åtkomst anges på den bloben. Det går också att ange det på blobens container för att ge behörighet att ta bort alla blobar i containern.
DELETE https://myaccount.blob.core.windows.net/pictures/profile.jpg?sv=2015-02-21&st=2015-07-01T08%3a49%3a37.0000000Z&se=2015-07-02T08%3a49%3a37.0000000Z&sr=b&sp=d&si=YWJjZGVmZw%3d%3d&sig=%2bSzBm0wi8xECuGkKw97wnkSZ%2f62sxU%2b6Hq6a7qojIVE%3d HTTP/1.1
Host: myaccount.blob.core.windows.net
Content-Length: 0
Med den här signaturen anropas Ta bort blob om följande villkor uppfylls:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term för en associerad lagrad åtkomstprincip.
Den blob som anges av begäran (/myaccount/pictures/profile.jpg) matchar den blob som anges som den signerade resursen.
Filexempel
Det här avsnittet innehåller exempel som visar signaturer för delad åtkomst för REST-åtgärder på filer.
Exempel: Hämta en fil med hjälp av en resurs signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för läsåtkomst på en resurs.
Få frågeparametrar kan göra det möjligt för klienten att utfärda begäran för att åsidosätta svarshuvuden för den här signaturen för delad åtkomst.
Svarshuvudena och motsvarande frågeparametrar är följande:
Svarshuvudnamn | Motsvarande SAS-frågeparameter |
---|---|
Cache-Control |
rscc |
Content-Disposition |
rscd |
Content-Encoding |
rsce |
Content-Language |
rscl |
Content-Type |
rsct |
Fälten som utgör sträng-till-signera för signaturen inkluderar:
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedresource=c
signedpermissions=r
signature=dD80ihBh5jfNpymO5Hg1IdiJIEvHcJpCMiCMnN/RnbI=
signedidentifier=YWJjZGVmZw==
signedversion=2015—02-21
responsecontent-disposition=file; attachment
responsecontent-type=binary
Sträng-till-tecken är konstruerad på följande sätt:
StringToSign = r + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
file/myaccount/pictures + \n
YWJjZGVmZw== + \n
2015—02-21 + \n
+ \n
file; attachment + \n
+ \n
+ \n
binary
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = a39+YozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ=
Signaturen för delad åtkomst anger läsbehörigheter för resursen pictures
för det angivna intervallet. Resursen som representeras av begärande-URL:en är en fil, men signaturen för delad åtkomst anges på resursen. Det går också att ange det i själva filen.
GET https://myaccount.file.core.windows.net/pictures/profile.jpg?sv=2015-02-21&st=2015-07-01T08:49Z&se=2015-07-02T08:49Z&sr=c&sp=r&rscd=file;%20attachment&rsct=binary&sig=YWJjZGVmZw%3d%3d&sig=a39%2BYozJhGp6miujGymjRpN8tsrQfLo9Z3i8IRyIpnQ%3d
För en klient som gör en begäran med den här signaturen körs åtgärden Hämta fil om följande villkor uppfylls:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term för en associerad lagrad åtkomstprincip.
Filen som anges av begäran (/myaccount/pictures/profile.jpg) finns i resursen som anges som den signerade resursen (/myaccount/pictures).
Om du anger rsct=binary
och rscd=file; attachment
på signaturen content-type
för delad åtkomst åsidosätts huvudena och content-disposition
i svaret.
Ett lyckat svar för en begäran som görs med den här signaturen för delad åtkomst liknar följande:
Status Response:
HTTP/1.1 200 OK
Response Headers:
Content-Length: 11
Content-Type: binary
Content-Disposition: file; attachment
ETag: "0x8CB171DBEAD6A6B"
x-ms-version: 2015-02-21
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0
Exempel: Ladda upp en fil med en signatur för delad åtkomst på en resurs
I följande exempel visas hur du skapar en signatur för delad åtkomst för att skriva en fil. I det här exemplet skapar vi en signatur som ger skrivbehörighet för alla filer i resursen. Sedan använder vi signaturen för delad åtkomst för att skriva till en fil i resursen.
De signerade signaturfälten som ska bestå av URL:en inkluderar:
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedresource=c
signedpermissions=w
signature=Rcp6gQRfV7WDlURdVTqCa+qEArnfJxDgE+KH3TCChIs=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
Signaturen konstrueras på följande sätt:
StringToSign = w + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
file/myaccount/pictures + \n
YWJjZGVmZw== + \n
2015-02-21
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = Rcp6gQRfV7WDlURdVTqCa+qEArnfJxDgE+KH3TCChIs=
Begärande-URL:en anger skrivbehörigheter för containern pictures
för det angivna intervallet. Resursen som representeras av begärande-URL:en är en blob, men signaturen för delad åtkomst anges i containern. Det går också att ange det på själva bloben.
PUT https://myaccount.file.core.windows.net/pictures/photo.jpg?sv=2015-02-21&st=2015-07-01T08%3a49Z&se=2015-07-01T08%3a49Z&
sr=c&sp=w&si=YWJjZGVmZw%3d%3d&sig=Rcp6gQRfV7WDlURdVTqCa%2bqEArnfJxDgE%2bKH3TCChIs%3d HTTP/1.1
Host: myaccount.blob.core.windows.net
Content-Length: 12
Hello World.
Med den här signaturen anropas Skapa fil om följande villkor uppfylls:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term i en associerad lagrad åtkomstprincip.
Filen som anges av begäran (/myaccount/pictures/photo.jpg) finns i resursen som anges som den signerade resursen (/myaccount/pictures).
Exempel: Ta bort fil med hjälp av en fils signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst som beviljar borttagningsbehörigheter för en fil och sedan använder signaturen för delad åtkomst för att ta bort filen.
Varning
En signatur för delad åtkomst för en DELETE-åtgärd bör distribueras på ett omdömesgillt sätt, eftersom det kan få oavsiktliga konsekvenser att tillåta en klient att ta bort data.
De signerade signaturfälten som ska omfatta URL:en inkluderar:
signedstart=2015-07-01T08:49:37.0000000Z
signedexpiry=2015-07-02T08:49:37.0000000Z
signedresource=b
signedpermissions=d
signature=+SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
Signaturen konstrueras på följande sätt:
StringToSign = d + \n
2015-07-01T08:49:37.0000000Z + \n
2015-07-02T08:49:37.0000000Z + \n
file/myaccount/pictures/profile.jpg + \n
YWJjZGVmZw==
2015-02-21
HMAC-SHA256(URL.Decode(UTF8.Encode(StringToSign))) = +SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
Begärande-URL:en anger borttagningsbehörigheter för bildresursen för det angivna intervallet. Resursen som representeras av begärande-URL:en är en fil och signaturen för delad åtkomst anges för den filen. Det går också att ange den på filresursen för att ge behörighet att ta bort alla filer i resursen.
DELETE https://myaccount.file.core.windows.net/pictures/profile.jpg?sv=2015-02-21&st=2015-07-01T08%3a49%3a37.0000000Z&se=2015-07-02T08%3a49%3a37.0000000Z&sr=b&sp=d&si=YWJjZGVmZw%3d%3d&sig=%2bSzBm0wi8xECuGkKw97wnkSZ%2f62sxU%2b6Hq6a7qojIVE%3d HTTP/1.1
Host: myaccount.blob.core.windows.net
Content-Length: 0
Med den här signaturen anropas Ta bort fil om följande villkor uppfylls:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term i en associerad lagrad åtkomstprincip.
Filen som anges av begäran (/myaccount/pictures/profile.jpg) matchar den fil som angetts som den signerade resursen.
Köexempel
Det här avsnittet innehåller exempel som visar signaturer för delad åtkomst för REST-åtgärder i köer. I de här exemplen körs kötjänståtgärden endast efter att följande villkor har uppfyllts:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term i en associerad lagrad åtkomstprincip.
Kön som anges av begäran är samma kö som godkänts av signaturen för delad åtkomst.
Exempel: Hämta meddelanden med en signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för att hämta meddelanden från en kö. Den här signaturen ger behörighet att bearbeta meddelanden för kön. Slutligen använder det här exemplet signaturen för delad åtkomst för att hämta ett meddelande från kön.
Granska följande signerade signaturfält, konstruktionen av sträng-till-tecken och konstruktionen av URL:en som anropar åtgärden Hämta meddelanden när begäran har godkänts:
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedpermissions=p
signature=+SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
StringToSign = p + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
queue/myaccount/myqueue + \n
YWJjZGVmZw== + \n
2015-02-21
GET https://myaccount.queue.core.windows.net/myqueue/messages?visibilitytimeout=120&sv=2015-02-21&st=2015-07-01T08%3a49Z&se=2015-07-02T08%3a49Z&sp=p&si=YWJjZGVmZw%3d%3d&sig=jDrr6cna7JPwIaxWfdH0tT5v9dc%3d HTTP/1.1
Host: myaccount.queue.core.windows.net
Exempel: Lägg till ett meddelande med en signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för att lägga till ett meddelande i en kö. Den här signaturen ger kön behörighet att lägga till. Slutligen använder det här exemplet signaturen för att lägga till ett meddelande.
Granska följande signerade signaturfält, konstruktionen av strängen StringToSign och konstruktionen av URL:en som anropar åtgärden Put Message efter att begäran har godkänts:
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedpermissions=a
signature= +SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
StringToSign = a + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
queue/myaccount/myqueue + \n
YWJjZGVmZw== + \n
2015-02-21
POST https://myaccount.queue.core.windows.net/myqueue/messages?visibilitytimeout=120&sv=2015-02-21&st=2015-07-01T08%3a49Z&se=2015-07-02T08%3a49Z&sp=a&si=YWJjZGVmZw%3d%3d&sig=jDrr6cna7JPwIaxWfdH0tT5v9dc%3d HTTP/1.1
Host: myaccount.queue.core.windows.net
Content-Length: 100
<QueueMessage>
<MessageText>PHNhbXBsZT5zYW1wbGUgbWVzc2FnZTwvc2FtcGxlPg==</MessageText>
</QueueMessage>
Exempel: Granska meddelanden och hämta ett meddelande med en signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för att titta på nästa meddelande i en kö och hämta antalet meddelanden i kön. Den här signaturen ger läsbehörighet för kön. Slutligen använder det här exemplet signaturen för delad åtkomst för att granska ett meddelande och sedan läsa kömetadata, vilket inkluderar antalet meddelanden.
Granska följande signerade signaturfält, konstruktionen av sträng-till-tecken och konstruktionen av URL:en som anropar åtgärderna Peek Messages (Granska meddelanden ) och Get Queue Metadata (Hämta kömetadata ):
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedpermissions=r
signature=+SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
StringToSign = r + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
queue/myacccount/myqueue + \n
YWJjZGVmZw== + \n
2015-02-21
GET https://myaccount.queue.core.windows.net/myqueue/messages?peekonly=true&sv=2015-02-21&st=2015-07-01T08%3a49Z&se=2015-07-02T08%3a49Z&sp=r&si=YWJjZGVmZw%3d%3d&sig=jDrr6cna7JPwIaxWfdH0tT5v9dc%3d HTTP/1.1
Host: myaccount.queue.core.windows.net
GET https://myaccount.queue.core.windows.net/myqueue?comp=metadata&sv=2015-02-21&st=2015-07-01T08%3a49Z&se=2015-07-01T08%3a49Z&sp=r&si=YWJjZGVmZw%3d%3d&sig=jDrr6cna7JPwIaxWfdH0tT5v9dc%3d HTTP/1.1
Host: myaccount.queue.core.windows.net
Tabellexempel
Det här avsnittet innehåller exempel som visar signaturer för delad åtkomst för REST-åtgärder i tabeller. I de här exemplen körs tabelltjänståtgärden endast efter att följande villkor har uppfyllts:
Begäran har godkänts.
Begäran görs inom den tidsram som anges av signaturen för delad åtkomst.
Begäran bryter inte mot någon term i en associerad lagrad åtkomstprincip.
Kön som anges av begäran är samma kö som godkänts av signaturen för delad åtkomst.
Exempel: Fråga en tabell med en signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för att fråga entiteter i en tabell. Signaturen ger frågebehörigheter för ett visst intervall i tabellen. Slutligen använder det här exemplet signaturen för delad åtkomst för att fråga entiteter inom intervallet.
Granska följande signerade signaturfält, konstruktionen av strängen StringToSign och konstruktionen av URL:en som anropar åtgärden Query Entities ( Fråga entiteter). Resultatet av åtgärden Frågeentiteter innehåller endast entiteter i intervallet som definieras av startpk
, startrk
, endpk
och endrk
.
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedpermissions=r
signature= +SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
startpk="Coho Winery"
startrk="Auburn"
endpk="Coho Winery"
endrk="Seattle"
String-To-Sign = r + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
table/myaccount/mytable + \n
YWJjZGVmZw== + \n
2015-02-21 + \n
Coho Winery + \n
Auburn + \n
Coho Winery + \n
Seattle
GET https://myaccount.table.core.windows.net/MyTable?$filter=PartitionKey%20eq%20'Coho%20Winery'&sv=2015-02-21&tn=MyTable&st=2015-07-01T08%3a49Z&se=2015-07-02T08%3a49Z&sp=r&si=YWJjZGVmZw%3d%3d&sig=jDrr6cna7JPwIaxWfdH0tT5v9dc%3d&spk=Coho%20Winery&srk=Auburn&epk=Coho%20Winery&erk=Seattle HTTP/1.1
Host: myaccount.table.core.windows.net
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
Exempel: Uppdatera en tabell med en signatur för delad åtkomst
I följande exempel visas hur du skapar en signatur för delad åtkomst för uppdatering av entiteter i en tabell. Signaturen ger uppdateringsbehörigheter för ett visst område med entiteter. Slutligen använder det här exemplet signaturen för delad åtkomst för att uppdatera en entitet i intervallet.
Granska följande signerade signaturfält, konstruktionen av strängen StringToSign och konstruktionen av URL:en som anropar åtgärden Uppdatera entitet. Åtgärden Uppdatera entitet kan bara uppdatera entiteter inom det partitionsintervall som definieras av startpk
och endpk
.
signedstart=2015-07-01T08:49Z
signedexpiry=2015-07-02T08:49Z
signedpermissions=u
signature= +SzBm0wi8xECuGkKw97wnkSZ/62sxU+6Hq6a7qojIVE=
signedidentifier=YWJjZGVmZw==
signedversion=2015-02-21
startpk="Coho Winery"
endpk="Coho Winery"
String-To-Sign = u + \n
2015-07-01T08:49Z + \n
2015-07-02T08:49Z + \n
table/myaccount/mytable + \n
YWJjZGVmZw== + \n
2015-02-21 + \n
Coho Winery + \n
+ \n
Coho Winery + \n
MERGE https://myaccount.table.core.windows.net/MyTable(PartitionKey='Coho%20Winery',RowKey='Seattle')?sv=2015-02-21&tn=MyTable&st=2015-07-01T08%3a49Z&se=2015-07-02T08%3a49Z&sp=u&si=YWJjZGVmZw%3d%3d&sig=jDrr6cna7JPwIaxWfdH0tT5v9dc%3d&spk=Coho%20Winery&epk=Coho%20Winery HTTP/1.1
Host: myaccount.table.core.windows.net
DataServiceVersion: 3.0;NetFx
MaxDataServiceVersion: 3.0;NetFx
If-Match: *
Content-Type: application/atom+xml
Content-Length: 696
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<entry xmlns:d="http://schemas.microsoft.com/ado/2007/08/dataservices" xmlns:m="http://schemas.microsoft.com/ado/2007/08/dataservices/metadata" xmlns="http://www.w3.org/2005/Atom">
<title />
<author>
<name />
</author>
<id>https://myaccount.table.core.windows.net/MyTable(PartitionKey='Coho Winery',RowKey='Seattle')</id>
<content type="application/xml">
<m:properties>
<d:PartitionKey>P</d:PartitionKey>
<d:RowKey>R</d:RowKey>
<d:Timestamp m:type="Edm.DateTime">0001-01-01T00:00:00</d:Timestamp>
</m:properties>
</content>
</entry>
Se även
Delegera åtkomst med en signatur för delad åtkomst
Skapa en tjänst-SAS