Azure Cognitive Services 仮想ネットワークを構成するConfigure Azure Cognitive Services virtual networks

Azure Cognitive Services は、多層型のセキュリティ モデルを採用しています。Azure Cognitive Services provides a layered security model. このモデルでは、ネットワークの特定のサブセットに、Cognitive Services アカウントを固定することができます。This model enables you to secure your Cognitive Services accounts to a specific subset of networks. ネットワーク ルールを構成すると、指定したネットワークのセットを経由してデータを要求しているアプリケーションのみが、アカウントにアクセスできます。When network rules are configured, only applications requesting data over the specified set of networks can access the account. 要求フィルターにより、リソースへのアクセスを制限することができます。You can limit access to your resources with request filtering. Azure 仮想ネットワーク内の指定した IP アドレス、IP 範囲、またはサブネットのリストから発信された要求に制限します。Allowing only requests originating from specified IP addresses, IP ranges or from a list of subnets in Azure Virtual Networks. このオファリングに関心がある場合は、プレビュー アクセスを要求する必要があります。If you're interested in this offering, you'll need to request preview access.

ネットワーク ルールが有効なときに Cognitive Services リソースにアクセスするアプリケーションでは、認可が必要です。An application that accesses a Cognitive Services resource when network rules are in effect requires authorization. 承認は、Azure Active Directory (Azure AD) 資格情報、または有効な API キーで行うことができます。Authorization is supported with Azure Active Directory (Azure AD) credentials or with a valid API key.

重要

Cognitive Services アカウントのファイアウォール規則をオンにすると、既定ではデータの受信要求がブロックされます。Turning on firewall rules for your Cognitive Services account blocks incoming requests for data by default. 要求を通すよう許可するには、次のいずれかの条件を満たしている必要があります。In order to allow requests through, one of the following conditions needs to be met:

  • 要求は、ターゲットの Cognitive Services アカウントの許可されたサブネットの一覧にある Azure Virtual Network (VNet) 内で動作するサービスから発信されたものである必要があります。The request should originate from a service operating within an Azure Virtual Network (VNet) on the allowed subnet list of the target Cognitive Services account. VNet を発信元とする要求のエンドポイントは、Cognitive Services アカウントのカスタム サブドメインとして設定する必要があります。The endpoint in requests originated from VNet needs to be set as the custom subdomain of your Cognitive Services account.
  • または、許可された IP アドレスのリストからの要求である必要があります。Or the request should originate from an allowed list of IP addresses.

ブロックされる要求には、他の Azure サービスからの要求、Azure portal からの要求、ログおよびメトリック サービスからの要求などが含まれます。Requests that are blocked include those from other Azure services, from the Azure portal, from logging and metrics services, and so on.

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

シナリオScenarios

Cognitive Services リソースをセキュリティで保護するには、最初に、(インターネット トラフィックを含む) すべてのネットワークからのトラフィックに対して既定でアクセスを拒否するように、ルールを構成する必要があります。To secure your Cognitive Services resource, you should first configure a rule to deny access to traffic from all networks (including internet traffic) by default. 次に、特定の VNet からのトラフィックにアクセスを許可するルールを構成する必要があります。Then, you should configure rules that grant access to traffic from specific VNets. この構成では、アプリケーションに対してセキュリティで保護されたネットワーク境界を構築することができます。This configuration enables you to build a secure network boundary for your applications. また、選択したパブリック インターネット IP アドレス範囲からのトラフィックにアクセスを許可して、インターネットやオンプレミスの特定のクライアントからの接続を有効にすることもできます。You can also configure rules to grant access to traffic from select public internet IP address ranges, enabling connections from specific internet or on-premises clients.

Azure Cognitive Services に対して、REST や WebSocket などのすべてのネットワーク プロトコルにネットワーク ルールが適用されます。Network rules are enforced on all network protocols to Azure Cognitive Services, including REST and WebSocket. Azure のテスト コンソールのようなツールを使用してデータにアクセスするには、明示的なネットワーク ルールを構成する必要があります。To access data using tools such as the Azure test consoles, explicit network rules must be configured. 既存の Cognitive Services リソース、または新しい Cognitive Services リソースを作成するときに、ネットワークルールを適用できます。You can apply network rules to existing Cognitive Services resources, or when you create new Cognitive Services resources. 適用したネットワーク ルールは、すべての要求に対して適用されます。Once network rules are applied, they're enforced for all requests.

サポートされているリージョンとサービス内容Supported regions and service offerings

Cognitive Services で仮想ネットワークが使用できるのは、カナリア - 米国中部 EUAP西ヨーロッパ米国西部 2 Azure リージョンに限定されています。Virtual network support for Cognitive Services is limited to the Canary - Central US EUAP, West Europe, and West US 2 Azure regions. また、すべての Cognitive Service のオファリングで仮想ネットワークをサポートしているわけではありません。Additionally, not all of the Cognitive Service offerings support virtual networks. 次の Cognitive Service のオファリングにより、仮想ネットワークを使用できます。The following Cognitive Service offerings allow for the use of virtual networks. ここに記載されていないサービス内容では、仮想ネットワークはサポートされません。If the service offering is not listed here, it doesn't support virtual networks.

既定のネットワーク アクセス ルールの変更Change the default network access rule

既定では、Cognitive Services リソースは任意のネットワーク上のクライアントからの接続を受け入れます。By default, Cognitive Services resources accept connections from clients on any network. 選択したネットワークへのアクセスを制限するには、まず既定のアクションを変更する必要があります。To limit access to selected networks, you must first change the default action.

警告

ネットワーク ルールを変更すると、Azure Cognitive Services に接続するアプリケーションの機能に影響が及ぶことがあります。Making changes to network rules can impact your applications' ability to connect to Azure Cognitive Services. 既定のネットワーク ルールを拒否に設定すると、アクセスを許可する特定のネットワーク ルールも合わせて適用されていない限り、データへのアクセスがすべてブロックされます。Setting the default network rule to deny blocks all access to the data unless specific network rules that grant access are also applied. アクセスを拒否する既定のルールを変更する前に、ネットワーク ルールを使用して、許可されたネットワークへのアクセスを許可するようにしてください。Be sure to grant access to any allowed networks using network rules before you change the default rule to deny access. オンプレミス ネットワークの IP アドレスを一覧表示することを許可する場合は、オンプレミス ネットワークから発信することができるすべてのパブリック IP アドレスを追加してください。If you are allow listing IP addresses for your on-premises network, be sure to add all possible outgoing public IP addresses from your on-premises network.

既定のネットワーク アクセス ルールを管理するManaging default network access rules

Cognitive Services リソースの規定のネットワーク アクセス ルールは、Azure portal、PowerShell、または Azure CLI で管理できます。You can manage default network access rules for Cognitive Services resources through the Azure portal, PowerShell, or the Azure CLI.

  1. セキュリティで保護する Cognitive Services リソースにアクセスします。Go to the Cognitive Services resource you want to secure.

  2. [仮想ネットワーク] という名前の [リソース管理] メニューを選択します。Select the RESOURCE MANAGEMENT menu called Virtual network.

    仮想ネットワークのオプション

  3. 既定でアクセスを拒否するには、 [選択されたネットワーク] からのアクセスを許可するように選択します。To deny access by default, choose to allow access from Selected networks. [選択されたネットワーク] のみを設定した状態で、 [仮想ネットワーク] または [アドレス範囲] を構成していない場合 - すべてのアクセスが効率的に拒否されます。With the Selected networks setting alone, unaccompanied by configured Virtual networks or Address ranges - all access is effectively denied. すべてのアクセスが拒否された場合、Cognitive Services リソースを使用しようとしている要求は許可されません。When all access is denied, requests attempting to consume the Cognitive Services resource aren't permitted. これまで通り、Azure portal、Azure PowerShell または Azure CLI を使用して Cognitive Services リソースを構成することもできます。The Azure portal, Azure PowerShell or, Azure CLI can still be used to configure the Cognitive Services resource.

  4. すべてのネットワークからのトラフィックを許可するには、 [すべてのネットワーク] からのアクセスを許可するように選択します。To allow traffic from all networks, choose to allow access from All networks.

    仮想ネットワークの拒否

  5. [保存] を選択して変更を保存します。Select Save to apply your changes.

仮想ネットワークからアクセスの許可Grant access from a virtual network

パブリック インターネットの特定の サブネットからのアクセスのみを許可するように、Cognitive Services リソースを構成できます。You can configure Cognitive Services resources to allow access only from specific subnets. 許可するサブネットは、同じサブスクリプション内の VNet に属していても、または異なる Azure Active Directory テナントに属するサブスクリプションなど、異なるサブスクリプション内のものであってもかまいません。The allowed subnets may belong to a VNet in the same subscription, or in a different subscription, including subscriptions belonging to a different Azure Active Directory tenant.

VNet 内の Azure Cognitive Services に対するサービス エンドポイントを有効にします。Enable a service endpoint for Azure Cognitive Services within the VNet. サービス エンドポイントでは、VNet からのトラフィックが、最適なパスを経由して、Azure Cognitive Services サービスに送信されます。The service endpoint routes traffic from the VNet through an optimal path to the Azure Cognitive Services service. サブネットと仮想ネットワークの ID も、各要求と一緒に転送されます。The identities of the subnet and the virtual network are also transmitted with each request. 管理者は、その後、VNet 内の特定のサブネットからの要求の受信を許可するネットワーク ルールを、Cognitive Services リソースに対して構成できます。Administrators can then configure network rules for the Cognitive Services resource that allow requests to be received from specific subnets in a VNet. これらのネットワーク ルールによってアクセスを許可されたクライアントがデータにアクセスするには、Cognitive Services リソースの認可要件を引き続き満たす必要があります。Clients granted access via these network rules must continue to meet the authorization requirements of the Cognitive Services resource to access the data.

各 Cognitive Services リソースでは最大 100 個の 仮想ネットワーク ルールがサポートされ、それを IP ネットワーク規則と組み合わせることができます。Each Cognitive Services resource supports up to 100 virtual network rules, which may be combined with IP network rules.

必要なアクセス許可Required permissions

Cognitive Services リソースに仮想ネットワーク規則を適用するには、追加されるサブネットに対する適切なアクセス許可を持っている必要があります。To apply a virtual network rule to a Cognitive Services resource, the user must have the appropriate permissions for the subnets being added. 必要なアクセス許可は、既定の 共同作成者 ロール、または Cognitive Services 共同作成者 ロールです。The required permission is the default Contributor role, or the Cognitive Services Contributor role. 必要なアクセス許可をカスタム ロール定義に追加することもできます。Required permissions can also be added to custom role definitions.

Cognitive Services リソースとアクセスを許可される仮想ネットワークは、異なる Azure AD テナントの一部であるサブスクリプションなど、異なるサブスクリプションに含まれていてもかまいません。Cognitive Services resource and the virtual networks granted access may be in different subscriptions, including subscriptions that are a part of a different Azure AD tenant.

注意

異なる Azure Active Directory テナントの一部である仮想ネットワーク内のサブネットへのアクセスを許可するルールの構成は、現在、Powershell、CLI、および REST API でのみサポートされています。Configuration of rules that grant access to subnets in virtual networks that are a part of a different Azure Active Directory tenant are currently only supported through Powershell, CLI and REST APIs. このようなルールを Azure portal を使用して構成することはできませんが、ポータルで表示することはできます。Such rules cannot be configured through the Azure portal, though they may be viewed in the portal.

仮想ネットワーク規則の管理Managing virtual network rules

Cognitive Services リソースの 仮想ネットワーク規則は、Azure portal、PowerShell、または Azure CLI で管理できます。You can manage virtual network rules for Cognitive Services resources through the Azure portal, PowerShell, or the Azure CLI.

  1. セキュリティで保護する Cognitive Services リソースにアクセスします。Go to the Cognitive Services resource you want to secure.

  2. [仮想ネットワーク] という名前の [リソース管理] メニューを選択します。Select the RESOURCE MANAGEMENT menu called Virtual network.

  3. [選択されたネットワーク] からのアクセスを許可するように選択していることを確認します。Check that you've selected to allow access from Selected networks.

  4. 既存のネットワーク ルールが設定されている仮想ネットワークへのアクセスを許可するには、 [仮想ネットワーク][Add existing Azure virtual network](既存の Azure 仮想ネットワークを追加) を選択します。To grant access to a virtual network with an existing network rule, under Virtual networks, select Add existing virtual network.

    既存の VNet を追加する

  5. [仮想ネットワーク][サブネット] オプションを選択して、 [有効化] を選択します。Select the Virtual networks and Subnets options, and then select Enable.

    既存の VNet の詳細を追加する

  6. 新しい仮想ネットワークを作成してアクセスを許可するには、 [Add new virtual network](新しい仮想ネットワークを追加) をクリックします。To create a new virtual network and grant it access, select Add new virtual network.

    新しい vNet を追加する

  7. 新しい仮想ネットワークの作成に必要な情報を指定して、 [作成] を選択します。Provide the information necessary to create the new virtual network, and then select Create.

    vNet を作成する

    注意

    Azure Cognitive Services 用のサービス エンドポイントが、選択した仮想ネットワークとサブネットに対してまだ構成されていない場合は、この操作の中で構成することができます。If a service endpoint for Azure Cognitive Services wasn't previously configured for the selected virtual network and subnets, you can configure it as part of this operation.

    現在、ルールの作成時に選択できるのは、同じ Azure Active Directory テナントに属する仮想ネットワークのみです。Presently, only virtual networks belonging to the same Azure Active Directory tenant are shown for selection during rule creation. 別のテナントに属する仮想ネットワーク内のサブネットにアクセスを許可するには、Powershell、CLI、または REST API を使用してください。To grant access to a subnet in a virtual network belonging to another tenant, please use Powershell, CLI or REST APIs.

  8. 仮想ネットワークまたはサブネットのルールを削除するには、 [...] を選択して仮想ネットワークまたはサブネットのコンテキスト メニューを開き、 [削除] を選択します。To remove a virtual network or subnet rule, select ... to open the context menu for the virtual network or subnet, and select Remove.

    vNet の削除

  9. [保存] を選択して変更を保存します。Select Save to apply your changes.

重要

拒否するように既定のルールを設定します。そうしないと、ネットワーク ルールは効力を発揮しません。Be sure to set the default rule to deny, or network rules have no effect.

インターネットの IP 範囲からのアクセスを許可するGrant access from an internet IP range

パブリック インターネットの特定の IP アドレス範囲からのアクセスを許可するように、Cognitive Services リソースを構成できます。You can configure Cognitive Services resources to allow access from specific public internet IP address ranges. この構成では、特定のサービスとオンプレミスのネットワークにアクセスを許可し、一般的なインターネット トラフィックを効率的にブロックします。This configuration grants access to specific services and on-premises networks, effectively blocking general internet traffic.

許可するインターネット アドレスの範囲は、CIDR 表記法を使って 16.17.18.0/24 の形式で、または 16.17.18.19 のように個々の IP アドレスとして、指定できます。Provide allowed internet address ranges using CIDR notation in the form 16.17.18.0/24 or as individual IP addresses like 16.17.18.19.

ヒント

「/31」や「/32」のプレフィックス サイズを使用した小さなアドレス範囲はサポートされていません。Small address ranges using "/31" or "/32" prefix sizes are not supported. これらの範囲は、個々の IP アドレス ルールを使用して構成する必要があります。These ranges should be configured using individual IP address rules.

IP ネットワーク ルールは、パブリック インターネットの IP アドレスに対してのみ許可されます。IP network rules are only allowed for public internet IP addresses. プライベート ネットワーク用に予約されている IP アドレス範囲 (RFC 1918 で定義) は、IP ルールでは許可されません。IP address ranges reserved for private networks (as defined in RFC 1918) aren't allowed in IP rules. プライベート ネットワークには、10.*172.16.* - 172.31.*、および 192.168.* で始まるアドレスが含まれます。Private networks include addresses that start with 10.*, 172.16.* - 172.31.*, and 192.168.*.

注意

IP ネットワーク ルールは、Cognitive Services リソースと同じ Azure リージョンから送信された要求には影響ありません。IP network rules have no effect on requests originating from the same Azure region as the Cognitive Services resource. 同じリージョンの要求を許可するには、仮想ネットワーク規則を使用します。Use Virtual network rules to allow same-region requests.

現時点でサポートされているのは、IPv4 アドレスのみです。Only IPV4 addresses are supported at this time. 各 Cognitive Services リソースでは最大 100 個の IP ネットワーク ルールがサポートされ、それを仮想ネットワーク規則と組み合わせることができます。Each Cognitive Services resource supports up to 100 IP network rules, which may be combined with Virtual network rules.

オンプレミスのネットワークからのアクセスの構成Configuring access from on-premises networks

IP ネットワーク ルールでオンプレミスのネットワークから Cognitive Services リソースへのアクセスを許可するには、ネットワークで使用するインターネット接続 IP アドレスを特定する必要があります。To grant access from your on-premises networks to your Cognitive Services resource with an IP network rule, you must identify the internet facing IP addresses used by your network. サポートが必要な場合は、ネットワーク管理者にお問い合わせください。Contact your network administrator for help.

パブリック ピアリングまたは Microsoft ピアリングのためにオンプレミスから ExpressRoute を使用している場合、NAT の IP アドレスを識別する必要があります。If you are using ExpressRoute on-premises for public peering or Microsoft peering, you will need to identify the NAT IP addresses. パブリック ピアリングの場合、各 ExpressRoute 回線は既定で 2 つの NAT IP アドレスを使用します。For public peering, each ExpressRoute circuit by default uses two NAT IP addresses. それぞれの NAT IP アドレスは、トラフィックが Microsoft Azure ネットワーク バックボーンに入ったときに Azure サービス トラフィックに適用されます。Each is applied to Azure service traffic when the traffic enters the Microsoft Azure network backbone. Microsoft ピアリングの場合、使用される NAT の IP アドレスは、ユーザーが指定するか、サービス プロバイダーが指定します。For Microsoft peering, the NAT IP addresses that are used are either customer provided or are provided by the service provider. サービス リソースへのアクセスを許可するには、リソースの IP ファイアウォール設定でこれらのパブリック IP アドレスを許可する必要があります。To allow access to your service resources, you must allow these public IP addresses in the resource IP firewall setting. パブリック ピアリングの ExpressRoute 回線の IP アドレスを確認するには、Azure Portal から ExpressRoute のサポート チケットを開いてください。To find your public peering ExpressRoute circuit IP addresses, open a support ticket with ExpressRoute via the Azure portal. 詳細については、ExpressRoute のパブリック ピアリングと Microsoft ピアリングの NAT に関するセクションを参照してください。Learn more about NAT for ExpressRoute public and Microsoft peering.

IP ネットワーク ルールの管理Managing IP network rules

Cognitive Services リソースの IP ネットワーク ルールは、Azure portal、PowerShell、または Azure CLI で管理できます。You can manage IP network rules for Cognitive Services resources through the Azure portal, PowerShell, or the Azure CLI.

  1. セキュリティで保護する Cognitive Services リソースにアクセスします。Go to the Cognitive Services resource you want to secure.

  2. [仮想ネットワーク] という名前の [リソース管理] メニューを選択します。Select the RESOURCE MANAGEMENT menu called Virtual network.

  3. [選択されたネットワーク] からのアクセスを許可するように選択していることを確認します。Check that you've selected to allow access from Selected networks.

  4. インターネット IP 範囲へのアクセスを許可するには、 [ファイアウォール] > [アドレス範囲] で IP アドレスまたはアドレス範囲 (CIDR 形式) を入力します。To grant access to an internet IP range, enter the IP address or address range (in CIDR format) under Firewall > Address Range. 有効なパブリック IP (予約されない) アドレスのみが受け入れられます。Only valid public IP (non-reserved) addresses are accepted.

    IP 範囲を追加する

  5. IP ネットワーク ルールを削除するには、アドレス範囲の横にあるごみ箱 のアイコンを選択します。To remove an IP network rule, select the trash can icon next to the address range.

    IP 範囲を削除する

  6. [保存] を選択して変更を保存します。Select Save to apply your changes.

重要

拒否するように既定のルールを設定します。そうしないと、ネットワーク ルールは効力を発揮しません。Be sure to set the default rule to deny, or network rules have no effect.

次の手順Next steps