编写 WebApp VNET 与 Azure Powershell 集成的脚本

Scripting WebApp VNET integration with Azure Powershell

我可以使用 Azure 门户将 Web 应用程序添加到虚拟网络,以便在其上托管的各种服务之间进行通信。但是,我在环境中通过 Powershell 编写了其他所有内容,并且也想自动化 WebApp/VNET 集成。

到目前为止我已阅读以下文章:

https://azure.microsoft.com/en-gb/documentation/articles/web-sites-integrate-with-vnet/

然而,这只是通过门户网站执行此操作的方法。我认为 Set-AzureRMWebApp cmdlet 是正确的使用方法,但我看不到任何可能有帮助的参数。

https://msdn.microsoft.com/en-us/library/mt652487.aspx

目前不支持,我们的 to-do 列表中有它,不幸的是我现在没有预计到达时间

首先,您需要一个现有的 VNet,并根据我在 http://www.techdiction.com/2016/01/12/creating-a-point-to-site-vpn-connection-on-an-azure-resource-manager-virtual-network/

post 配置的 P2S

然后使用以下 PowerShell 使用 P2S VPN 将 AppService 连接到 VNet:

$subscription_id = "<Subscription_ID>"
$NetworkName = "<Network_Name>"
$location = "<Region>"
$netrgname = "<Resource_Group_VNet_is_in>"
$AppServiceName = "<AppService_Name>"
 $props = @{
      "vnetResourceId" = "/subscriptions/$subscription_id/resourcegroups/$netrgname/providers/Microsoft.ClassicNetwork/virtualNetworks/$NetworkName";
      "certThumbprint"= "<Client_cert_thumbprint>";
      "certBlob"= "<Base64_Cert_Data>";
      "routes" = $null;
      }

New-AzureRMResource -ResourceName "$AppServiceName/$AppServiceName-to-$NetworkName" -Location $location  -ResourceGroupName MarcusWebsites -ResourceType Microsoft.Web/sites/virtualNetworkConnections -PropertyObject $props -ApiVersion "2015-08-01" -force 

如果需要,您可以通过修改路由来配置自定义路由属性。让我知道你的进展如何,如果它解决了问题,请将此 post 标记为答案。

马库斯

我遇到了同样的问题,但找不到使用 PS 模块来执行此操作的方法。但是,现在已将功能添加到 azure CLI。所以你可以从脚本中调用它。

az webapp vnet-integration add -g "resource group name" -n "app service name" --vnet "vnet name" --subnet "subnet name"