Azure StorageのSASを活用してみよう
こんにちは。
developmentグループで働く、エンジニアの蛭田です。
今回は、Azure Storageを便利に使う方法の一つ、
SAS(Shared Access Signature)について解説します。
Azure Storageとは
Microsoft Azureの提供するストレージサービスです。
用途はさまざま、クラウド上にデータを保存できます。
Azure Storageのセキュリティ
Azure Storageでストレージアカウントを作成すると、
ストレージにアクセスするためのURLが発行されます。
例えば、パブリックなストレージアカウントとして作成し、
Webページで利用する画像などのデータを配置したうえで、
URLをもとに取得、表示することができます。
一方で、機密情報を含むデータの場合は、
プライベートなストレージアカウントとして作成されるべきです。
匿名アクセスの許可を無効にすることで制限をかけることができます。

プライベートなストレージにアクセスする
方法① アクセスキー
匿名アクセスが無効になっている場合でも、
データにアクセスする方法がいくつかあります。
ひとつは「アクセスキー」を用いる方法です。

ただし、アクセスキーを用いて権限を与えると、
データの読み取り権限だけではなく、書き込み、削除など、
フルコントロールの権限が与えられてしまいます。
方法② SAS URL
そこで登場するのが、SAS(Shared Access Signature)です。
SASの設定により、読み取り/書き込み/削除など細かい権限を付与したり、
あらかじめ、アクセスできる期間を設定できたりします。
以下の画面でSAS URLを設定し、URL経由でデータにアクセスします。

SASが活用される場面
主にWebアプリ開発で、以下のようなケースが考えられます。
・Webページに表示する画像の取得
・Webページ上で行われるファイルのダウンロード処理
・動画/音声ファイルのストリーミング再生
今回紹介した以外にも、IP制限など、有効な設定がいくつかあるので、
Azureを使ってWeb開発する際には参考にしてみてください!