Azure Shared Access Signatureのクエリパラメータまとめ
はじめに
本記事では、Azure Storageへのアクセス権を付与されたURI(トークン)を発行するShared Access Signature (SAS) において利用される、クエリパラメータについてまとめた。
SASトークンのクエリパラメータ
SASトークンに設定できるクエリパラメータは以下になる。
クエリ文字 | 名称 | 内容 | 設定例 | 備考 |
---|---|---|---|---|
sv | SignedVersion | SAS認証のバージョン | sv=2019-02-02 | |
srt | SignedResourceType | 認可するリソース(アカウント SAS) | srt=sco | s : サービスレベルのapi c : コンテナーレベルのapi o : オブジェクトレベルのapi |
sr | SignedResource | 認可するリソース(サービス SAS) | sr=bc | b : Blob bs : Blob スナップショット c : コンテナー |
ss | SignedService | 認可するサービス(アカウント SASのみ) | ss=bqtf | b : Blob q : キュー t : テーブル f : ファイル |
sp | SignedPermissions | 認可する権限 | sp=racwd | 認可するサービスごとに、認可できる権限がそれぞれ用意されている |
spr | SignedProtocol | 認可するプロトコル | spr=https | |
sip | SignedIP | 認可するIP アドレス | sip=168.1.5.60-168.1.5.70 | |
st | SignedStart | SASが有効になる時刻 | st=2019-04-29T22%3A18%3A26Z | |
se | SignedExpiry | SASが無効になる時刻 | se=2019-04-30T02%3A23%3A26Z | |
sig | Signature | 署名文字列 | sig=Z%2FRHIX5Xcg0Mq2rqI3OlWTjEg2tYkboXr1P9ZUXDtkk%3D |
サービスごとに付与できる権限
権限 | URI の略記 | Blob | コンテナー | ファイル | ファイル共有 | キュー | テーブル |
---|---|---|---|---|---|---|---|
読み取り | r | ○ | ○ | ○ | ○ | ○ | ○ |
追加 | a | ○ | ○ | ○ | ○ | ||
作成 | c | ○ | ○ | ○ | ○ | ||
書込み | w | ○ | ○ | ○ | ○ | ||
タグ | t | ○ | ○ | ||||
削除 | d | ○ | ○ | ○ | ○ | ○ | |
バージョンの削除 | x | ○ | |||||
リスト | l | ○ | ○ | ||||
更新 | u | ○ | ○ | ||||
プロセス | p | ○ |
https://docs.microsoft.com/en-us/rest/api/storageservices/create-service-sas
https://docs.microsoft.com/en-us/rest/api/storageservices/create-service-sas
https://docs.microsoft.com/en-us/rest/api/storageservices/versioning-for-the-azure-storage-services
SASの有効期限について
システム時刻がコンピューターごとに異なり、時刻のずれが生じてしまうことを、クロックスキューという。
SASの開始時刻を現在時刻にした場合、 SASを要求したマシンと、Azure基盤側のシステム時刻にクロックスキューがあると、SASが有効にならないケースがあるので、 SASは開始時刻は現在時刻より15分以上前に設定することが推奨されている。
https://docs.microsoft.com/ja-jp/azure/storage/common/storage-sas-overview