Azure Storage ファイアウォールおよび仮想ネットワークを構成する

Azure Storage では、多層型セキュリティ モデルが提供されています。 このモデルでは、使用されるネットワークまたはリソースの種類とサブネットに基づいて、アプリケーションやエンタープライズ環境で求められるストレージ アカウントへのアクセス レベルを確保して制御できます。 ネットワーク ルールを構成すると、指定したネットワークのセットまたは指定した Azure リソースのセットを経由してデータを要求しているアプリケーションのみが、ストレージ アカウントにアクセスできます。 ストレージ アカウントへのアクセスを、指定した IP アドレス、IP 範囲、Azure Virtual Network (VNet) 内のサブネット、または一部の Azure サービスのリソース インスタンスから発信された要求に制限できます。

ストレージ アカウントには、インターネットを介してアクセスできるパブリック エンドポイントがあります。 また、自分のストレージ アカウント用にプライベート エンドポイントを作成することもできます。自分の VNet からストレージ アカウントにプライベート IP アドレスを割り当てて、プライベート リンクを介して VNet とストレージ アカウントの間のトラフィックをすべて保護できます。 Azure Storage ファイアウォールを使用すると、自分のストレージ アカウントのパブリック エンドポイントへのアクセスを制御できます。 プライベート エンドポイントの使用時には、パブリック エンドポイント経由のすべてのアクセスをブロックするためにファイアウォールを使用することもできます。 また、ストレージ ファイアウォールは、信頼された一部の Azure プラットフォーム サービスがストレージ アカウントに安全にアクセスできるよう構成することもできます。

ネットワーク規則が有効なときにストレージ アカウントにアクセスするアプリケーションでも、要求に対する適切な承認が必要です。 認可は、BLOB とキューに対する Azure Active Directory (Azure AD) の資格情報、有効なアカウント アクセス キー、または SAS トークンでサポートされています。 BLOB コンテナーが匿名パブリック アクセスに構成されている場合、そのコンテナー内のデータの読み取りを要求するには認可が必要されませんが、ファイアウォール規則は引き続き有効であり、匿名トラフィックはブロックされます。

重要

ストレージ アカウントのファイアウォール規則を有効にすると、Azure 仮想ネットワーク (VNet) 内で動作しているサービス、または許可されたパブリック IP アドレスから送信された要求でない限り、データに対して受信した要求は既定でブロックされます。 ブロックされる要求には、他の Azure サービスからの要求、Azure portal からの要求、ログおよびメトリック サービスからの要求などが含まれます。

サービス インスタンスがホストされているサブネットからのトラフィックを許可することで、VNet 内で動作する Azure サービスにアクセス権を付与できます。 また、以下で説明する例外メカニズムによって、限られた数のシナリオを有効にすることもできます。 Azure portal を通してストレージ アカウントからデータにアクセスするには、設定済みの信頼できる境界 (IP または VNet) 内のコンピューター上にいる必要があります。

Note

Azure を操作するには、Azure Az PowerShell モジュールを使用することをお勧めします。 作業を開始するには、Azure PowerShell のインストールに関する記事を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。

シナリオ

ストレージ アカウントをセキュリティで保護するには、最初に、既定ではパブリック エンドポイントですべてのネットワークからのトラフィック (インターネット トラフィックなど) にアクセスを許可しないことを規則として構成する必要があります。 次に、特定の VNet からのトラフィックにアクセスを許可するルールを構成する必要があります。 また、ルールを構成して、選択したパブリック インターネット IP アドレス範囲からのトラフィックへのアクセスを許可できます。これにより、インターネットやオンプレミスの特定クライアントからの接続を有効にできます。 この構成では、アプリケーションに対してセキュリティで保護されたネットワーク境界を構築することができます。

同じストレージ アカウントでは、ファイアウォール規則を組み合わせて、特定の仮想ネットワークからとパブリック IP アドレス範囲からのアクセスを許可することができます。 ストレージ ファイアウォール規則は、既存のストレージ アカウントに適用できます。または、新しいストレージ アカウントの作成時に適用できます。

ストレージ ファイアウォール規則は、ストレージ アカウントのパブリック エンドポイントに適用されます。 ストレージ アカウントのプライベート エンドポイントへのトラフィックを許可するのにファイアウォール アクセス規則は必要ありません。 プライベート エンドポイントの作成を承認するプロセスで、プライベート エンドポイントをホストするサブネットからのトラフィックへのアクセスが暗黙的に許可されます。

ネットワーク ルールは、Azure Storage のすべてのネットワーク プロトコル (REST と SMB を含む) に適用されます。 Azure portal、Storage Explorer、AzCopy などのツールを使用してデータにアクセスするには、明示的なネットワーク規則を構成する必要があります。

適用したネットワーク ルールは、すべての要求に対して適用されます。 特定の IP アドレスへのアクセスを許可する SAS トークンは、トークン所有者のアクセスを制限する働きをしますが、構成されているネットワーク ルールを超えて新しいアクセスを許可することはありません。

仮想マシン ディスクのトラフィック (マウントとマウント解除、およびディスク IO を含む) は、ネットワーク ルールによる影響を受けません。 ページ BLOB への REST アクセスはネットワーク ルールによって保護されています。

従来のストレージ アカウントでは、ファイアウォールと仮想ネットワークはサポートされていません。

ネットワーク ルールが適用されたストレージ アカウントでアンマネージド ディスクを使用し、例外を作成することにより、VM をバックアップおよび復元できます。 このプロセスについては、この記事の「例外を管理する」セクションをご覧ください。 ファイアウォールの例外は Azure によって既に管理されているので、マネージド ディスクには適用されません。

既定のネットワーク アクセス ルールの変更

既定では、ストレージ アカウントは、任意のネットワーク上のクライアントからの接続を受け入れます。 選択したネットワークへのアクセスを制限するか、または、すべてのネットワークからのトラフィックを禁止して、プライベート エンドポイント経由でのみアクセスを許可することができます。

警告

この設定を変更すると、アプリケーションが Azure Storage に接続する機能に影響を与える可能性があります。 この設定を変更する前に、許可されたネットワークへのアクセスを許可するか、プライベート エンドポイントを使用してアクセスを設定してください。

  1. セキュリティで保護するストレージ アカウントに移動します。

  2. [セキュリティとネットワーク][ネットワーク] の設定を見つけます。

  3. 許可するパブリック ネットワーク アクセスの種類を選択します。

    • すべてのネットワークからのトラフィックを許可するには、[すべてのネットワークから有効] を選択します。

    • 特定の仮想ネットワークからのトラフィックのみを許可するには、[選択した仮想ネットワークと IP アドレスから有効] を選択します。

    • すべてのネットワークからのトラフィックをブロックするには、[無効] を選択します。

  4. [保存] を選択して変更を保存します。

注意事項

設計上、信頼されたサービスからストレージ アカウントにアクセスすることは、他のネットワーク アクセス制限よりも最も優先されます。 そのため、[パブリック ネットワーク アクセス] を以前に [選択した仮想ネットワークと IP アドレスから有効] に設定した後で [無効] に設定する場合、[信頼されたサービスの一覧にある Azure サービスがこのストレージ アカウントにアクセスすることを許可します] など、以前に構成したリソース インスタンス例外は、引き続き効力を有します。 その結果、それらのリソースとサービスでは [パブリック ネットワーク アクセス][無効] に設定した後もストレージ アカウントにアクセスできます。

仮想ネットワークからアクセスの許可

特定のサブネットからのアクセスのみを許可するように、ストレージ アカウントを構成できます。 許可されたサブネットは、同じサブスクリプション内の VNet に属していても、または異なる Azure Active Directory テナントに属するサブスクリプションなど、異なるサブスクリプション内のものであってもかまいません。

VNet 内の Azure Storage に対するサービス エンドポイントを有効にすることができます。 サービス エンドポイントでは、VNet からのトラフィックが、最適なパスを経由して、Azure Storage サービスにルーティングされます。 サブネットと仮想ネットワークの ID も、各要求と一緒に転送されます。 管理者は、その後、VNet 内の特定のサブネットからの要求の受信を許可するネットワーク ルールを、ストレージ アカウントに対して構成できます。 これらのネットワーク ルールによってアクセスを許可されたクライアントがデータにアクセスするには、ストレージ アカウントの認可要件を引き続き満たす必要があります。

各ストレージ アカウントでは最大 200 個の仮想ネットワーク規則がサポートされ、それを IP ネットワーク ルールと組み合わせることができます。

重要

ネットワーク ルールに含まれているサブネットを削除すると、そのサブネットはストレージ アカウントのネットワーク ルールから削除されます。 同じ名前で新しいサブネットを作成しても、ストレージ アカウントにアクセスできません。 アクセスを許可するには、ストレージ アカウントのネットワーク ルールで新しいサブネットを明示的に承認する必要があります。

必要なアクセス許可

ストレージ アカウントに仮想ネットワーク規則を適用するには、追加されるサブネットに対する適切なアクセス許可を持っている必要があります。 規則の適用は、ストレージ アカウント共同作成者か、カスタム Azure ロール経由で Microsoft.Network/virtualNetworks/subnets/joinViaServiceEndpoint/actionAzure リソース プロバイダー操作にアクセスする権利が与えられているユーザーが実行できます。

ストレージ アカウントとアクセスを許可される仮想ネットワークは、異なる Azure AD テナントの一部であるサブスクリプションなど、異なるサブスクリプションに含まれていてもかまいません。

Note

異なる Azure Active Directory テナントの一部である仮想ネットワーク内のサブネットへのアクセスを許可するルールの構成は、現在、PowerShell、CLI、および REST API でのみサポートされています。 このようなルールを Azure portal を使用して構成することはできませんが、ポータルで表示することはできます。

使用可能な仮想ネットワークのリージョン

既定では、サービス エンドポイントは、同じ Azure リージョン内の仮想ネットワークとサービス インスタンスの間で機能します。 サービス エンドポイントを Azure Storage で使用する場合、サービス エンドポイントは、仮想ネットワークとペア リージョンのサービス インスタンスの間でも機能します。 サービス エンドポイントを使用して他のリージョンの仮想ネットワークへのアクセスを許可する場合は、仮想ネットワークのサブスクリプションに AllowGlobalTagsForStorage 機能を登録する必要があります。 この機能は現在パブリック プレビューの段階です。

サービス エンドポイントにより、リージョンのフェールオーバー時の継続性と、読み取り専用の geo 冗長ストレージ (RA-GRS) インスタンスへのアクセスが実現されます。 仮想ネットワークからストレージ アカウントへのアクセスを許可するネットワーク ルールでは、任意の RA-GRS インスタンスへのアクセスも許可します。

リージョンが停止する期間中のディザスター リカバリーを計画するときは、ペアのリージョン内にあらかじめ VNet を作成しておく必要があります。 これらの代替仮想ネットワークからのアクセスを許可するネットワーク ルールで、Azure Storage 用のサービス エンドポイントを有効にします。 その後、これらのルールを geo 冗長ストレージ アカウントに適用します。

他のリージョンの仮想ネットワークへのアクセスを有効にする (プレビュー)

重要

この機能は現在プレビューの段階です。

ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。

サービス エンドポイント上の別のリージョンにある仮想ネットワークからのアクセスを有効にするには、仮想ネットワークのサブスクリプションに AllowGlobalTagsForStorage 機能を登録します。 AllowedGlobalTagsForStorage 機能が有効になっているサブスクリプション内のすべてのサブネットでは、パブリック IP アドレスを使用してストレージ アカウントと通信できなくなります。 代わりに、これらのサブネットからストレージ アカウントへのすべてのトラフィックで、ソース IP としてプライベート IP アドレスが使用されます。 その結果、IP ネットワーク規則を使用してそれらのサブネットからのトラフィックを許可するストレージ アカウントは、影響を受けなくなります。

注意

既存のサービス エンドポイントを更新して別のリージョンのストレージ アカウントにアクセスするには、サブスクリプションを AllowGlobalTagsForStorage 機能に登録した後、サブネットでサブネットの更新操作を実行します。 同様に、古い構成に戻すには、AllowGlobalTagsForStorage 機能でサブスクリプションを登録解除した後、サブネットの更新操作を実行します。

プレビュー期間中は、PowerShell または Azure CLI を使用してこの機能を有効にする必要があります。

仮想ネットワーク規則の管理

ストレージ アカウントの仮想ネットワーク規則は、Azure portal、PowerShell、または CLIv2 で管理できます。

Note

AllowGlobalTagsForStorage 機能を登録済みであり、別の Azure AD テナント内の、またはストレージ アカウントのリージョンまたはそのペア リージョンとは別のリージョン内の仮想ネットワーク/サブネットからストレージ アカウントへのアクセスを有効にする場合は、PowerShell または Azure CLI を使用する必要があります。 Azure portal には、他の Azure AD テナント内の、またはストレージ アカウントのリージョンまたはそのペア リージョンとは別のリージョン内のサブネットが表示されないため、それを、他のリージョン内の仮想ネットワークのアクセス ルールを構成するために使用することはできません。

  1. セキュリティで保護するストレージ アカウントに移動します。

  2. [ネットワーク] という名前の設定メニューをクリックします。

  3. [選択されたネットワーク] からのアクセスを許可するように選択していることを確認します。

  4. 新しいネットワーク ルールで仮想ネットワークへのアクセスを許可するには、 [仮想ネットワーク] で、 [既存の仮想ネットワークを追加] を選択し、 [仮想ネットワーク][サブネット] オプションの順に選択して、 [追加] を選択します。 新しい仮想ネットワークを作成してアクセスを許可するには、 [新しい仮想ネットワークを追加] をクリックします。 新しい仮想ネットワークの作成に必要な情報を指定して、 [作成] を選択します。

    Note

    Azure Storage 用のサービス エンドポイントが、選択した仮想ネットワークとサブネットに対してまだ構成されていない場合は、この操作の中で構成することができます。

    現在、ルールの作成時に選択できるのは、同じ Azure Active Directory テナントに属する仮想ネットワークのみです。 別のテナントに属する仮想ネットワーク内のサブネットにアクセスを許可するには、PowerShell、CLI、または REST API を使用してください。

    AllowGlobalTagsForStorageOnly 機能を登録してある場合でも、ストレージ アカウントのリージョンまたはそのペア リージョンとは別のリージョン内のサブネットは選択肢として表示されません。 別のリージョン内の仮想ネットワーク/サブネットからご利用のストレージ アカウントへのアクセスを有効にする場合は、PowerShell または Azure CLI タブの手順を使用してください。

  5. 仮想ネットワークまたはサブネットのルールを削除するには、 [...] を選択して仮想ネットワークまたはサブネットのコンテキスト メニューを開き、 [削除] を選択します。

  6. [保存] を選択して変更を保存します。

インターネットの IP 範囲からのアクセスを許可する

IP ネットワーク規則を作成すると、IP ネットワーク規則を使用して特定のパブリック インターネット IP アドレス範囲からのアクセスを許可できます。 各ストレージ アカウントでは、最大 200 個の規則を設定できます。 これらの規則は、特定のインターネット ベースのサービスとオンプレミスのネットワークにアクセスを許可し、一般的なインターネット トラフィックをブロックします。

IP アドレスの範囲には、次の制限が適用されます。

  • IP ネットワーク規則は、パブリック インターネットの IP アドレスに対してのみ許可されます。

    プライベート ネットワーク用に予約されている IP アドレス範囲 (RFC 1918 で定義) は、IP ルールでは許可されません。 プライベート ネットワークには、10.**、172.16. - *172.31.、および *192.168. で始まるアドレスが含まれます。

  • 許可するインターネット アドレスの範囲は、CIDR 表記法を使って 16.17.18.0/24 の形式で、または 16.17.18.19 のように個々の IP アドレスとして、指定する必要があります。

  • 「/31」や「/32」のプレフィックス サイズを使用した小さなアドレス範囲はサポートされていません。 これらの範囲は、個々の IP アドレス ルールを使用して構成する必要があります。

  • ストレージ ファイアウォール規則の構成では、IPv4 アドレスのみがサポートされています。

IP ネットワーク規則は、次の場合には使用できません。

  • ストレージ アカウントと同じ Azure リージョン内のクライアントへのアクセスを制限する。

    IP ネットワーク ルールは、ストレージ アカウントと同じ Azure リージョンから送信された要求には影響ありません。 同じリージョンの要求を許可するには、仮想ネットワーク規則を使用します。

  • サービス エンドポイントがある VNet 内のペアになっているリージョンのクライアントへのアクセスを制限する。

  • ストレージ アカウントと同じリージョンにデプロイされている Azure サービスへのアクセスを制限する。

    ストレージ アカウントと同じリージョンでデプロイされたサービスでは、プライベート Azure IP アドレスが通信に使用されます。 そのため、特定の Azure サービスへのアクセスを、そのパブリック送信 IP アドレスの範囲に基づいて制限することはできません。

オンプレミスのネットワークからのアクセスの構成

IP ネットワーク ルールでオンプレミスのネットワークからストレージ アカウントへのアクセスを許可するには、ネットワークで使用するインターネット接続 IP アドレスを特定する必要があります。 サポートが必要な場合は、ネットワーク管理者にお問い合わせください。

パブリック ピアリングまたは Microsoft ピアリングのためにオンプレミスから ExpressRoute を使用している場合、使用されている NAT の IP アドレスを識別する必要があります。 パブリック ピアリングの場合、既定で、Azure サービスのトラフィックが Microsoft Azure のネットワーク バックボーンに入ったときに適用される 2 つの NAT IP アドレスが各 ExpressRoute 回線に使用されます。 Microsoft ピアリングの場合、使用される NAT の IP アドレスは、ユーザーが指定するか、サービス プロバイダーが指定します。 サービス リソースへのアクセスを許可するには、リソースの IP ファイアウォール設定でこれらのパブリック IP アドレスを許可する必要があります。 パブリック ピアリングの ExpressRoute 回線の IP アドレスを確認するには、Azure Portal から ExpressRoute のサポート チケットを開いてください。 詳細については、ExpressRoute のパブリック ピアリングと Microsoft ピアリングの NAT に関するセクションを参照してください。

IP ネットワーク ルールの管理

ストレージ アカウントの IP ネットワーク ルールは、Azure portal、PowerShell、または CLIv2 で管理できます。

  1. セキュリティで保護するストレージ アカウントに移動します。

  2. [ネットワーク] という名前の設定メニューをクリックします。

  3. [選択されたネットワーク] からのアクセスを許可するように選択していることを確認します。

  4. インターネット IP 範囲へのアクセスを許可するには、 [ファイアウォール]>[アドレス範囲] で IP アドレスまたはアドレス範囲 (CIDR 形式) を入力します。

  5. IP ネットワーク ルールを削除するには、アドレス範囲の横にあるごみ箱アイコンを選択します。

  6. [保存] を選択して変更を保存します。

Azure リソース インスタンスからのアクセスを許可する

場合によっては、アプリケーションが、仮想ネットワークまたは IP アドレス ルールによって分離できない Azure リソースに依存していることがあります。 しかし、その場合でも、ストレージ アカウントのアクセスをセキュリティで保護してアプリケーションの Azure リソースのみに制限したいことがあります。 リソース インスタンス ルールを作成することによって、一部の Azure サービスの特定のリソース インスタンスにアクセスを許可するよう、ストレージ アカウントを構成できます。

リソース インスタンスがストレージ アカウントのデータに対して実行できる操作の種類は、リソース インスタンスの Azure ロールの割り当てによって決まります。 リソース インスタンスは、ストレージ アカウントと同じテナントからのものである必要がありますが、テナント内のどのサブスクリプションに属していてもかまいません。

Azure portal で、リソース ネットワーク ルールを追加または削除できます。

  1. Azure ポータルにサインインして、作業を開始します。

  2. ストレージ アカウントを見つけて、アカウントの概要を表示します。

  3. [ネットワーク] を選択して、ネットワークの構成ページを表示します。

  4. [ファイアウォールと仮想ネットワーク][選択されたネットワーク] に対して、アクセスを許可することを選択します。

  5. 下にスクロールして [リソース インスタンス] を見つけ、[リソースの種類] ドロップダウン リストで、ご利用のリソース インスタンスのリソースの種類を選択します。

  6. [インスタンス名] ドロップダウン リストで、リソース インスタンスを選択します。 また、アクティブなテナント、サブスクリプション、またはリソース グループ内のすべてのリソース インスタンスを含めるように選択することもできます。

  7. [保存] を選択して変更を適用します。 リソース インスタンスが、ネットワーク設定ページの [リソース インスタンス] セクションに表示されます。

リソース インスタンスを削除するには、リソース インスタンスの横にある削除アイコン () を選択します。

信頼された Azure サービスにアクセスを許可する

一部の Azure サービスは、ネットワーク ルールに含めることのできないネットワークから動作します。 他のアプリに対するネットワーク ルールを維持しながら、このような信頼された Azure サービスのサブセットにストレージ アカウントへのアクセスを許可できます。 これらの信頼されるサービスでは、強力な認証を使用して、ストレージ アカウントに安全に接続します。

ネットワーク ルールの例外を作成することによって、信頼された Azure サービスにアクセスを許可できます。 詳細な手順については、この記事の「例外を管理する」セクションを参照してください。

信頼された Azure サービスにアクセスを許可する場合は、次の種類のアクセスを許可します。

  • サブスクリプションに登録されているリソースに対する選択された操作のための信頼されたアクセス。
  • マネージド ID に基づくリソースへの信頼されたアクセス。

サブスクリプションに登録されているリソースへの信頼されたアクセス

一部のサービスのリソースは、お客様のサブスクリプションで登録されている場合に、特定の操作 (ログの書き込みやバックアップなど) のために同じサブスクリプション内のストレージ アカウントにアクセスできます。 次の表では、各サービスと許可される操作について説明します。

サービス リソース プロバイダー名 許可される操作
Azure Backup Microsoft.RecoveryServices IAAS 仮想マシンの管理対象外のディスクのバックアップとリストアを実行します。 (マネージド ディスクの場合は必須ではありません)。 詳細については、こちらを参照してください
Azure Data Box Microsoft.DataBox Data Box を使用して Azure にデータをインポートできるようにします。 詳細については、こちらを参照してください
Azure DevTest Labs Microsoft.DevTestLab カスタム イメージの作成とアーティファクトのインストール 詳細については、こちらを参照してください
Azure Event Grid Microsoft.EventGrid Blob Storage のイベント発行を有効にし、ストレージ キューへの発行を Event Grid に許可します。 Blob Storage イベントキューへの発行について確認してください。
Azure Event Hubs Microsoft.EventHub Event Hubs Capture を使用したアーカイブ データのキャプチャ 詳細については、こちらを参照してください
Azure File Sync Microsoft.StorageSync オンプレミスのファイル サーバーを Azure ファイル共有のキャッシュに変換できます。 マルチサイト同期、迅速なディザスターリカバリー、クラウド側バックアップが可能となります。 詳細情報
Azure HDInsight Microsoft.HDInsight 新しい HDInsight クラスターのための既定のファイル システムの初期コンテンツをプロビジョニングします。 詳細については、こちらを参照してください
Azure Import Export Microsoft.ImportExport Azure Storage Import/Export サービスを使用すると、Azure Storage にデータをインポートしたり、Azure Storage からデータをエクスポートしたりできます。 詳細については、こちらを参照してください
Azure Monitor Microsoft.Insights リソース ログ、Azure Active Directory サインインと監査ログ、Microsoft Intune ログなど、セキュリティで保護されたストレージ アカウントへの監視データの書き込みを許可します。 詳細については、こちらを参照してください
Azure のネットワーク Microsoft.Network Network Watcher および Traffic Analytics サービスを含め、ネットワーク トラフィック ログを格納し、分析します。 詳細については、こちらを参照してください
Azure Site Recovery Microsoft.SiteRecovery ファイアウォールが有効なキャッシュ、ソース、またはターゲット ストレージ アカウントを使用している場合、Azure IaaS 仮想マシンのディザスター リカバリーのレプリケーションを有効にします。 詳細については、こちらを参照してください

マネージド ID に基づく信頼されたアクセス

次の表の一覧で示されているサービスは、それらのサービスのリソース インスタンスに適切なアクセス許可が付与されている場合、ストレージ アカウントのデータにアクセスできます。

アカウントで階層型名前空間機能が有効になっていない場合は、リソースインスタンスごとにマネージド ID への Azure ロールの割り当てを明示的に行うことで、アクセス許可を付与できます。 この場合、インスタンスのアクセス範囲は、マネージド ID に割り当てられた Azure ロールに対応します。

階層型名前空間機能が有効になっているアカウントにも同じ手法を使用できます。 ただし、ストレージ アカウントに格納されている任意のディレクトリまたは BLOB のアクセス制御リスト (ACL) にマネージド ID を追加する場合、Azure ロールを割り当てる必要はありません。 この場合、インスタンスのアクセス範囲は、マネージド ID がアクセス許可を付与されているディレクトリまたはファイルと一致します。 また、Azure のロールと ACL を組み合わせることもできます。 これらを組み合わせてアクセス権を付与する方法の詳細については、「Azure Data Lake Storage Gen2 のアクセス制御モデル」を参照してください。

ヒント

特定のリソースにアクセスを許可する推奨される方法は、リソース インスタンス ルールを使用することです。 特定のリソース インスタンスにアクセスを許可するには、この記事の「Azure リソース インスタンスからのアクセスを許可する」を参照してください。

サービス リソース プロバイダー名 目的
Azure API Management Microsoft.ApiManagement/service ポリシーを使用して、API Management サービスが、ファイアウォールの背後にあるストレージ アカウントにアクセスできるようにします。 詳細については、こちらを参照してください
Azure Cache for Redis Microsoft.Cache/Redis Azure Cache for Redis からのストレージ アカウントへのアクセスを許可します。 詳細情報
Azure Cognitive Search Microsoft.Search/searchServices インデックス作成、処理、およびクエリのために、Cognitive Search サービスがストレージ アカウントにアクセスできるようになります。
Azure Cognitive Services Microsoft.CognitiveService/accounts Cognitive Services がストレージ アカウントにアクセスできるようにします。 詳細については、こちらを参照してください
Azure Container Registry タスク Microsoft.ContainerRegistry/registries ACR タスクは、コンテナー イメージを作成するときにストレージアカウントにアクセスできます。
Azure Data Factory Microsoft.DataFactory/factories ADF ランタイムを使用してストレージ アカウントへのアクセスを許可します。
Azure Data Share Microsoft.DataShare/accounts Data Share を使用してストレージ アカウントにアクセスできるようになります。
Azure DevTest Labs Microsoft.DevTestLab/labs DevTest Labs からのストレージ アカウントへのアクセスを許可します。
Azure Event Grid Microsoft.EventGrid/topics Azure Event Grid を使用してストレージ アカウントへのアクセスを許可します。
Azure Healthcare APIs Microsoft.HealthcareApis/services Azure Healthcare APIs からのストレージ アカウントへのアクセスを許可します。
Azure IoT Central アプリケーション Microsoft.IoTCentral/IoTApps Azure IoT Central アプリケーションからのストレージ アカウントへのアクセスを許可します。
Azure IoT Hub Microsoft.Devices/IotHubs IoT ハブからのデータを BLOB ストレージに書き込むことができます。 詳細情報
Azure Logic Apps Microsoft.Logic/workflows ロジック アプリがストレージ アカウントにアクセスできるようにします。 詳細については、こちらを参照してください
Azure Machine Learning サービス Microsoft.MachineLearningServices 承認された Azure Machine Learning ワークスペースでは、BLOB ストレージに実験の出力、モデル、およびログを書き込み、データを読み取ります。 詳細については、こちらを参照してください
Azure Media Services Microsoft.Media/mediaservices Media Services からのストレージ アカウントへのアクセスを許可します。
Azure Migrate Microsoft.Migrate/migrateprojects Azure Migrate からのストレージ アカウントへのアクセスを許可します。
Microsoft Purview Microsoft.Purview/accounts Microsoft Purview にストレージ アカウントへのアクセスを許可します。
Azure Remote Rendering Microsoft.MixedReality/remoteRenderingAccounts Remote Rendering からのストレージ アカウントへのアクセスを許可します。
Azure Site Recovery Microsoft.RecoveryServices/vaults Site Recovery からのストレージ アカウントへのアクセスを許可します。
Azure SQL データベース Microsoft.Sql ファイアウォールの内側にあるストレージ アカウントへの監査データの書き込みを許可します。
Azure Synapse Analytics Microsoft.Sql COPY ステートメントまたは PolyBase を使用して (専用プール)、またはサーバーレス プールで openrowset 関数と外部テーブルを使用して、特定の SQL データベースのデータのインポートとエクスポートを行うことを許可します。 詳細については、こちらを参照してください
Azure Stream Analytics Microsoft.StreamAnalytics ストリーミング ジョブからのデータを Blob Storage に書き込むことができます。 詳細については、こちらを参照してください
Azure Synapse Analytics Microsoft.Synapse ワークスペース Azure Synapse Analytics から Azure Storage のデータにアクセスできるようにします。

Storage Analytics へのアクセスを許可する

場合によっては、ネットワーク境界の外側からリソース ログとメトリックを読み取るためにアクセスする必要があります。 信頼されたサービスによるストレージ アカウントへのアクセスを構成している場合、ネットワーク ルールの例外を作成することにより、ログ ファイルとメトリック テーブルの一方またはその両方に対する読み取りアクセスを許可できます。 詳細な手順については、後の「例外を管理する」セクションを参照してください。 Storage Analytics の操作の詳細については、Azure Storage Analytics を使用したログとメトリック データの収集に関するページを参照してください。

例外を管理する

ネットワーク ルールの例外は、Azure portal、PowerShell、または Azure CLI v2 を通じて管理できます。

  1. セキュリティで保護するストレージ アカウントに移動します。

  2. [ネットワーク] という名前の設定メニューをクリックします。

  3. [選択されたネットワーク] からのアクセスを許可するように選択していることを確認します。

  4. [例外] で、許可する例外を選択します。

  5. [保存] を選択して変更を保存します。

次のステップ

サービス エンドポイントで Azure ネットワークのサービス エンドポイントについて確認してください。

Azure Storage セキュリティ ガイドで Azure Storage のセキュリティを詳しく調べてください。