ストレージ アカウント キーの概要

完了

Contoso 社のデータの多くは、カスタム アプリケーションによって生成または消費されます。 アプリケーションは、さまざまな言語で記述されています。

Azure Storage アカウントを使用して、Active Directory に承認済みのアプリを作成し、BLOB およびキュー内のデータへのアクセスを制御できます。 この認証アプローチは、Blob Storage や Queue Storage を使用するアプリに最適なソリューションです。

他のストレージ モデルでは、クライアントは "共有キー" や共有シークレットを使用できます。 この認証オプションは、最も簡単に使用できるものの 1 つであり、BLOB、ファイル、キュー、およびテーブルがサポートされます。 クライアントではすべての要求の HTTP Authorization ヘッダーに共有キーを埋め込み、ストレージ アカウントでそのキーが検証されます。

たとえば、アプリケーションでは BLOB リソースに対して GET 要求を発行できます。

GET http://myaccount.blob.core.windows.net/?restype=service&comp=stats

REST API のバージョン、日付、エンコードされた共有キーは、HTTP ヘッダーで制御されます。

x-ms-version: 2018-03-28  
Date: Wed, 23 Oct 2018 21:00:44 GMT  
Authorization: SharedKey myaccount:CY1OP3O3jGFpYFbTCBimLn0Xov0vt0khH/E5Gy0fXvg=

ストレージ アカウント キー

Azure Storage アカウントでは、共有キーは "ストレージ アカウント キー" と呼ばれます。 Azure では、作成するストレージ アカウントごとにこれらのキーのうち 2 つ (プライマリとセカンダリ) が作成されます。 キーにより、アカウント内の "すべてのもの" にアクセスできるようになります。

ストレージ アカウント キーは、Azure portal のストレージ アカウントのビューで見つかります。 ストレージ アカウントの左側のメニュー ウィンドウで、[セキュリティ + ネットワーク] > [アクセスキー] を選択します。

Azure portal でアクセス キーが表示されたスクリーンショット。

共有キーを保護する

ストレージ アカウントにあるキーは 2 つだけであり、それらによってアカウントへのフル アクセスが提供されます。 これらのキーは強力なので、ユーザーが完全に制御している信頼できる社内のアプリケーションでのみ使用してください。

キーが侵害された場合は、Azure portal でキーの値を変更します。 次のような理由で、ストレージ アカウント キーを再生成することがあります。

  • セキュリティ上の理由から、定期的にキーを生成することがあります。
  • だれかがアプリケーションをハッキングして、ハードコーディングされていた、または構成ファイルに保存されていたキーを取得した場合は、キーを再生成します。 侵害されたキーで、ハッカーがストレージ アカウントにフル アクセスできる可能性があります。
  • ストレージ アカウント キーを保存する Storage Explorer アプリケーションをチームが使用していて、チームのメンバーがチームから外れた場合、キーを再生成します。 そうしないと、アプリケーションは動作し続け、以前のチーム メンバーがストレージ アカウントにアクセスできます。

キーを更新するには:

  • セカンダリ キーを使用するように、信頼されている各アプリを変更します。
  • Azure portal でプライマリ キーを更新します。 これを新しいセカンダリ キー値と考えます。

重要

キーを更新した後、古いキー値を使おうとするクライアントはすべて拒否されます。 共有キーを使用しているすべてのクライアントを特定し、動作し続けられるように更新する必要があります。