クイックスタート: ネットワーク セキュリティ境界を作成する - Azure CLI
Azure CLI を使って Azure Key Vault のネットワーク セキュリティ境界を作成し、ネットワーク セキュリティ境界の使用を開始します。 ネットワーク セキュリティ境界を使用すると、Azure PaaS (PaaS) リソースが明示的に信頼された境界内で通信できるようになります。 次に、ネットワーク セキュリティ境界プロファイルで PaaS リソースの関連付けを作成して更新します。 その後、ネットワーク セキュリティ境界アクセス規則を作成して更新します。 完了したら、このクイックスタートで作成したすべてのリソースを削除します。
重要
ネットワーク セキュリティ境界はパブリック プレビュー段階であり、すべての Azure パブリック クラウド リージョンで利用できます。 このプレビュー バージョンはサービス レベル アグリーメントなしで提供されています。運用環境のワークロードに使用することはお勧めできません。 特定の機能はサポート対象ではなく、機能が制限されることがあります。 詳しくは、Microsoft Azure プレビューの追加使用条件に関するページをご覧ください。
前提条件
- アクティブなサブスクリプションが含まれる Azure アカウント。 無料でアカウントを作成できます。
Azure ネットワーク セキュリティ境界パブリック プレビューの登録が必要です。 登録するには、
AllowNSPInPublicPreview
機能フラグをサブスクリプションに追加します。機能フラグの追加について詳しくは、「Azure サブスクリプションでプレビュー機能を設定する」を参照してください。
機能フラグが追加された後、サブスクリプションに
Microsoft.Network
リソース プロバイダーを再登録する必要があります。Azure portal で
Microsoft.Network
リソース プロバイダーを再登録するには、サブスクリプションを選んでから、[リソース プロバイダー] を選択します。Microsoft.Network
を検索し、[再登録] を選択します。Microsoft.Network
リソース プロバイダーを再登録するには、次の Azure PowerShell コマンドを使用します。
# Register the Microsoft.Network resource provider Register-AzResourceProvider -ProviderNamespace Microsoft.Network
Microsoft.Network
リソース プロバイダーを再登録するには、次の Azure CLI コマンドを使用します。# Register the Microsoft.Network resource provider az provider register --namespace Microsoft.Network
リソース プロバイダーの再登録について詳しくは、「Azure リソース プロバイダーと種類」を参照してください。
- 最新の Azure CLI。またはポータルで Azure Cloud Shell を使用することもできます。
- この記事では、Azure CLI のバージョン 2.38.0 以降が必要です。 Azure Cloud Shell を使用している場合は、最新バージョンが既にインストールされています。
- 最新バージョンの Azure CLI にアップグレードした後、
az extension add --name nsp
を使用してネットワーク セキュリティ境界コマンドをインポートします。
Azure Cloud Shell で Bash 環境を使用します。 詳細については、「Azure Cloud Shell の Bash のクイックスタート」を参照してください。
CLI リファレンス コマンドをローカルで実行する場合、Azure CLI をインストールします。 Windows または macOS で実行している場合は、Docker コンテナーで Azure CLI を実行することを検討してください。 詳細については、「Docker コンテナーで Azure CLI を実行する方法」を参照してください。
ローカル インストールを使用する場合は、az login コマンドを使用して Azure CLI にサインインします。 認証プロセスを完了するには、ターミナルに表示される手順に従います。 その他のサインイン オプションについては、Azure CLI でのサインインに関するページを参照してください。
初回使用時にインストールを求められたら、Azure CLI 拡張機能をインストールします。 拡張機能の詳細については、Azure CLI で拡張機能を使用する方法に関するページを参照してください。
az version を実行し、インストールされているバージョンおよび依存ライブラリを検索します。 最新バージョンにアップグレードするには、az upgrade を実行します。
Azure アカウントにサインインしてサブスクリプションを接続する
開始するには、Azure Cloud Shell に接続するかローカル CLI 環境を使用します。
Azure Cloud Shell を使用している場合は、サインインしてお使いのサブスクリプションを選択します。
CLI をローカルにインストールした場合は、次のコマンドを使用してサインインします。
# Sign in to your Azure account az login
シェルで、次のコマンドを使用してアクティブなサブスクリプションをローカルで選択します。
# List all subscriptions az account set --subscription <Azure Subscription> # Re-register the Microsoft.Network resource provider az provider register --namespace Microsoft.Network
リソース グループとキー コンテナーを作成する
ネットワーク セキュリティ境界を作成する前に、リソース グループとキー コンテナー リソースを作成する必要があります。
この例では、WestCentralUS の場所に resource-group という名前のリソース グループを作成し、次のコマンドを使用してリソース グループに key-vault-YYYYDDMM という名前のキー コンテナーを作成します。
az group create \
--name resource-group \
--location westcentralus
# Create a key vault using a datetime value to ensure a unique name
key_vault_name="key-vault-$(date +%s)"
az keyvault create \
--name $key_vault_name \
--resource-group resource-group \
--location westcentralus \
--query 'id' \
--output tsv
ネットワーク セキュリティ境界を作成する
この手順では、az network perimeter create
コマンドを使用してネットワーク セキュリティ境界を作成します。
Note
ネットワーク セキュリティ境界規則またはその他のネットワーク セキュリティ境界構成には、個人を特定できるデータや機密データを配置しないでください。
az network perimeter create\
--name network-security-perimeter \
--resource-group resource-group \
-l westcentralus
PaaS リソースの関連付けを新しいプロファイルに作成して更新する
この手順では、az network perimeter profile create
と az network perimeter association create
コマンドを使用して、新しいプロファイルを作成し、PaaS リソースである Azure Key Vault をプロファイルに関連付けます。
Note
--private-link-resource
と --profile
パラメーターの値については、<PaaSArmId>
と <networkSecurityPerimeterProfileId>
をそれぞれキー コンテナーの値とプロファイル ID に置き換えます。
次のコマンドを使用して、ネットワーク セキュリティ境界の新しいプロファイルを作成します。
# Create a new profile az network perimeter profile create \ --name network-perimeter-profile \ --resource-group resource-group \ --perimeter-name network-security-perimeter
次のコマンドを使用して、Azure Key Vault (PaaS リソース) をネットワーク セキュリティ境界プロファイルに関連付けます。
# Get key vault id az keyvault show \ --name $key_vault_name \ --resource-group resource-group \ --query 'id' # Get the profile id az network perimeter profile show \ --name network-perimeter-profile \ --resource-group resource-group \ --perimeter-name network-security-perimeter # Associate the Azure Key Vault with the network security perimeter profile # Replace <PaaSArmId> and <networkSecurityPerimeterProfileId> with the ID values for your key vault and profile az network perimeter association create \ --name network-perimeter-association \ --perimeter-name network-security-perimeter \ --resource-group resource-group \ --access-mode Learning \ --private-link-resource "{id:<PaaSArmId>}" \ --profile "{id:<networkSecurityPerimeterProfileId>}"
次のように、
az network perimeter association create
コマンドを使用してアクセス モードを enforced に変更し、関連付けを更新します。az network perimeter association create \ --name network-perimeter-association \ --perimeter-name network-security-perimeter \ --resource-group resource-group \ --access-mode Enforced \ --private-link-resource "{id:<PaaSArmId>}" \ --profile "{id:<networkSecurityPerimeterProfileId>}"
ネットワーク セキュリティ境界アクセス規則を管理する
この手順では、az network perimeter profile access-rule
コマンドを使用して、パブリック IP プレフィックスを持つネットワーク セキュリティ境界アクセス規則を作成、更新、削除します。
次のコマンドを使用して作成されたプロファイルのパブリック IP プレフィックスを持つ受信アクセス規則を作成します。
# Create an inbound access rule az network perimeter profile access-rule create \ --name access-rule \ --profile-name network-perimeter-profile \ --perimeter-name network-security-perimeter \ --resource-group resource-group \ --address-prefixes "[192.0.2.0/24]"
次のコマンドを使用して、受信アクセス規則を別のパブリック IP プレフィックスで更新します。
# Update the inbound access rule az network perimeter profile access-rule create\ --name access-rule \ --profile-name network-perimeter-profile \ --perimeter-name network-security-perimeter \ --resource-group resource-group \ --address-prefixes "['198.51.100.0/24', '192.0.2.0/24']"
アクセス規則を削除する必要がある場合は、次のコマンドを使用します。
# Delete the access rule az network perimeter profile access-rule delete \ --Name network-perimeter-association \ --profile-name network-perimeter-profile \ --perimeter-name network-security-perimeter \ --resource-group resource-group
Note
マネージド ID が、それをサポートするリソースに割り当てられない場合、同じ境界内の他のリソースへの送信アクセスは拒否されます。 このリソースからのアクセスを許可することを目的としたサブスクリプション ベースの受信規則は有効になりません。
すべてのリソースの削除
このクイック スタートでネットワーク セキュリティ境界とその他のリソースを削除するには、次のコマンドを使用します。
# Delete the network security perimeter association
az network perimeter association delete \
--name network-perimeter-association \
--resource-group resource-group \
--perimeter-name network-security-perimeter
# Delete the network security perimeter
az network perimeter delete \
--resource-group resource-group \
--name network-security-perimeter --yes
# Delete the key vault
az keyvault delete \
--name $key_vault_name \
--resource-group resource-group
# Delete the resource group
az group delete \
--name resource-group \
--yes \
--no-wait
Note
ネットワーク セキュリティ境界からリソースの関連付けを削除すると、アクセス制御が既存のリソース ファイアウォール構成にフォールバックされます。 これにより、リソース ファイアウォール構成に従ってアクセスが許可または拒否される可能性があります。 PublicNetworkAccess が SecuredByPerimeter に設定されていて、関連付けが削除されている場合、リソースはロックダウン状態になります。 詳細については、Azure でのネットワーク セキュリティ境界への変換に関するページを参照してください。