Public/Azure/Get-AzureVPNReport.ps1
function Get-AzureVPNReport { Param( [Parameter(Mandatory, ValueFromPipeline, ValueFromPipelineByPropertyName)] $VPNGateway, [Parameter(Mandatory)] [string] $ResourceGroupName ) begin { } process { foreach ($CurVpnGateway in $VPNGateway) { $id = $CurVpnGateway.IpConfigurations.PublicIPAddress.id $PublicIP = (Get-AzureRmPublicIpAddress -ResourceGroup $ResourceGroupName -Name ($id -split '/')[8]).IpAddress [PSCustomObject]@{ ResourceGroupName = $CurVpnGateway.ResourceGroupName Location = $CurVpnGateway.Location Name = $CurVpnGateway.Name ProvisioningState = $CurVpnGateway.ProvisioningState GatewayType = $CurVpnGateway.GatewayType VpnType = $CurVpnGateway.VpnType SkuTier = $CurVpnGateway.Sku.Tier BgpPeeringAddress = $CurVpnGateway.BgpSettings.BgpPeeringAddress PrivateIpAllocationMethod = $CurVpnGateway.IpConfigurations.PrivateIpAllocationMethod PublicIpAddress = $PublicIP } } } end { } } |