本文會提供指導,帶您瞭解如何設定 Azure Key Vault 網路組態,以搭配其他應用程式和 Azure 服務。 若要深入瞭解不同的網路安全性設定,請參閱這裡。
接下來會逐步說明如何使用 Azure 入口網站、Azure CLI 和 Azure PowerShell 設定 Key Vault 防火牆和虛擬網路
- 瀏覽至您要保護的金鑰保存庫。
- 選取 [網絡],然後選取 [防火牆與虛擬網路] 索引標籤。
- 在 [允許存取來源] 之下,選取 [選取的網路]。
- 若要將現有的虛擬網路新增至防火牆和虛擬網路規則,請選取 [+ 新增現有的虛擬網路]。
- 在開啟的新刀鋒視窗中,選取您想要允許存取此金鑰保存庫的訂閱、虛擬網路和子網路。 如果您選取的虛擬網路和子網路並未啟用服務端點,請確認您要啟用服務端點,然後選取 [啟用]。 可能需要 15 分鐘的時間才會生效。
- 在 [IP 網路] 下方,輸入採用 CIDR (無類別網域間路由選擇) 表示法的 IPv4 位址範圍或個別的 IP 位址,以新增 IPv4 位址範圍。
- 如果您想要允許 Microsoft 信任的服務略過 Key Vault 防火牆,請選取 [是]。 如需目前 Key Vault 信任服務的完整清單,請參閱下列連結。 Azure Key Vault 信任的服務
- 選取 [儲存]。
您可以也新增虛擬網路和子網路,然後選取 [+ 新增虛擬網路],為新建立的虛擬網路和子網路啟用服務端點。 然後遵循提示。
以下說明如何使用 Azure CLI 來設定 Key Vault 防火牆和虛擬網路
安裝 Azure CLI 並登入。
列出可用的虛擬網路規則。 如果您還沒有為此金鑰保存庫設定任何規則,清單會是空的。
az keyvault network-rule list --resource-group myresourcegroup --name mykeyvault
在現有的虛擬網路和子網路上啟用 Key Vault 的服務端點。
az network vnet subnet update --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --service-endpoints "Microsoft.KeyVault"
為虛擬網路和子網路新增網路規則。
subnetid=$(az network vnet subnet show --resource-group "myresourcegroup" --vnet-name "myvnet" --name "mysubnet" --query id --output tsv)
az keyvault network-rule add --resource-group "demo9311" --name "demo9311premium" --subnet $subnetid
新增允許流量來自的 IP 位址範圍。
az keyvault network-rule add --resource-group "myresourcegroup" --name "mykeyvault" --ip-address "191.10.18.0/24"
如果有任何信任的服務需要存取此金鑰保存庫,請將 bypass
設定為 AzureServices
。
az keyvault update --resource-group "myresourcegroup" --name "mykeyvault" --bypass AzureServices
將預設動作設定為 Deny
以開啟網路規則。
az keyvault update --resource-group "myresourcegroup" --name "mekeyvault" --default-action Deny
以下說明如何使用 PowerShell 設定 Key Vault 防火牆和虛擬網路:
安裝最新的 Azure PowerShell,然後登入。
列出可用的虛擬網路規則。 如果您還沒有為此金鑰保存庫設定任何規則,清單會是空的。
(Get-AzKeyVault -VaultName "mykeyvault").NetworkAcls
在現有的虛擬網路和子網路上啟用 Key Vault 的服務端點。
Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Set-AzVirtualNetworkSubnetConfig -Name "mysubnet" -AddressPrefix "10.1.1.0/24" -ServiceEndpoint "Microsoft.KeyVault" | Set-AzVirtualNetwork
為虛擬網路和子網路新增網路規則。
$subnet = Get-AzVirtualNetwork -ResourceGroupName "myresourcegroup" -Name "myvnet" | Get-AzVirtualNetworkSubnetConfig -Name "mysubnet"
Add-AzKeyVaultNetworkRule -VaultName "mykeyvault" -VirtualNetworkResourceId $subnet.Id
新增允許流量來自的 IP 位址範圍。
Add-AzKeyVaultNetworkRule -VaultName "mykeyvault" -IpAddressRange "16.17.18.0/24"
如果有任何信任的服務需要存取此金鑰保存庫,請將 bypass
設定為 AzureServices
。
Update-AzKeyVaultNetworkRuleSet -VaultName "mykeyvault" -Bypass AzureServices
將預設動作設定為 Deny
以開啟網路規則。
Update-AzKeyVaultNetworkRuleSet -VaultName "mykeyvault" -DefaultAction Deny
參考資料
下一步