Dela via


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, endpkoch 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