Functions/Get-FirewallExceptions.ps1
Function Get-AHVMBackupStatus { <# .SYNOPSIS Gets the exceptions to firewall configurations .DESCRIPTION Gets the exceptions to firewall configurations .PARAMETER AllSubscriptions Run this command against all subscriptions. .PARAMETER Subscription Specifies the subscription to run against. The default is the current subscription. .PARAMETER ResourceType asdf .EXAMPLE .INPUTS .OUTPUTS .NOTES Author: Paul Harrison #> [CmdletBinding()] param ( [Switch] $AllSubscriptions, [Parameter(ValueFromPipeline = $true)] $Subscription, [Parameter(ValueFromPipeline = $true)] [ValidateSet('StorageAccounts')] $ResourceType ) begin { } Process { # if ($Subscription) { $Subscription | Invoke-AzureCommand -ScriptBlock $MyScriptBlock } # else { Invoke-AzureCommand -ScriptBlock $MyScriptBlock -AllSubscriptions:$AllSubscriptions } } End { "This cmdlet doesn't do anything yet. I developed a different feature I wanted to commit on this branch so... here is this useless cmdlet" } } <# $sa = Get-AzStorageAccount -ResourceGroupName trash -Name testpaul $sa.NetworkRuleSet.DefaultAction $sa.NetworkRuleSet.IpRules #> <# $result = Get-AzStorageAccount | ForEach-Object { [pscustomobject] @{ Name = $_.StorageAccountName ResourceGroupName = $_.ResourceGroupName NetworkRuleBypass = $_.NetworkRuleSet.Bypass NetworkRuleDefaultAction = $_.NetworkRuleSet.DefaultAction NetworkRuleIPRules = $_.NetworkRuleSet.IpRules.IPAddressOrRange NetworkRulevnetRules = $_.NetworkRuleSet.VirtualNetworkRules.VirtualNetworkResourceId } } $result | Format-Table #whatever you want. I''ll make it prettier and include a bit more info then have it export to a more useful format like csv or json or something #storage accounts organized by default allow/deny $result | Group-Object NetworkRuleDefaultAction | Select-Object count, name $result | Select-Object name -ExpandProperty NetworkRuleIPRules Get-AzStorageAccount | Select-Object name, ResourceGroupName -ExpandProperty NetworkRuleSet | Select-Object Name, ResourceGroup -ExpandProperty IpRules $MyScriptBlock = @{Get-AzStorageAccount | Select StorageAccountName, ResourceGroupName -ExpandProperty NetworkRuleSet | select StorageAccountName, ResourceGroupName -ExpandProperty IpRules } Get-AzStorageAccount | Select-Object StorageAccountName, ResourceGroupName -ExpandProperty NetworkRuleSet, VirtualNetworkRules | Select-Object StorageAccountName, ResourceGroupName -ExpandProperty IpRules $result = Get-AzStorageAccount Get-AzStorageAccount | Select-Object StorageAccountName, ResourceGroupName -ExpandProperty NetworkRuleSet | Select-Object StorageAccountName, ResourceGroupName -ExpandProperty IpRules $MyScriptBlock = { Get-AzStorageAccount | Select-Object StorageAccountName, ResourceGroupName -ExpandProperty NetworkRuleSet, VirtualNetworkRules | Select-Object StorageAccountName, ResourceGroupName -ExpandProperty IpRules } #> |