Get-AzureRmPolicyAlias
Get-AzureRmPolicyAlias retrieves and outputs Azure provider resource types that have aliases defined and match the given parameter values. If no parameters are provided, all provider resource types that contain an alias will be output. The -ListAvailable switch modifies this behavior by listing all matching resource types including those without aliases.
Warning
The AzureRM PowerShell module has been officially deprecated as of February 29, 2024. Users are advised to migrate from AzureRM to the Az PowerShell module to ensure continued support and updates.
Although the AzureRM module may still function, it's no longer maintained or supported, placing any continued use at the user's discretion and risk. Please refer to our migration resources for guidance on transitioning to the Az module.
Syntax
Get-AzureRmPolicyAlias
[-NamespaceMatch <String>]
[-ResourceTypeMatch <String>]
[-AliasMatch <String>]
[-PathMatch <String>]
[-ApiVersionMatch <String>]
[-LocationMatch <String>]
[-ListAvailable]
[-ApiVersion <String>]
[-Pre]
[-DefaultProfile <IAzureContextContainer>]
[<CommonParameters>]
Description
The Get-AzureRmPolicyAlias cmdlet gets a listing of policy aliases. Policy aliases are used by Azure Policy to refer to resource type properties. Parameters are provided that limit items in the listing by matching various properties of the resource type or its aliases. A given match value matches if the target string contains it using case insensitive comparison.
Examples
Example 1
PS C:\> Get-AzureRmPolicyAlias
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.AnalysisServices servers {Microsoft.AnalysisServices/servers/state, Microsoft.AnalysisServices/s...
Microsoft.Authorization roleAssignments {Microsoft.Authorization/roleAssignments/roleDefinitionId, Microsoft.Au...
Microsoft.Authorization roleDefinitions {Microsoft.Authorization/roleDefinitions/type, Microsoft.Authorization/...
... ... ...
Microsoft.Web hostingEnvironments {Microsoft.Web/hostingEnvironments/clusterSettings[*].name, Microsoft.W...
Microsoft.Web sites/config {Microsoft.Web/sites/config/httpLoggingEnabled, Microsoft.Web/sites/con...
Microsoft.GuestConfiguration guestConfigurationAssignments {Microsoft.GuestConfiguration/guestConfigurationAssignments/complianceS...
PS C:\>
Lists all provider resource types that have an alias.
Example 2
PS C:\> Get-AzureRmPolicyAlias -ListAvailable
Namespace ResourceType Aliases
--------- ------------ -------
... ... ...
Microsoft.AlertsManagement operations {}
Microsoft.AnalysisServices servers {Microsoft.AnalysisServices/servers/sta...
Microsoft.AnalysisServices locations {}
... ... ...
PS C:\>
Lists all provider resource types, including those without aliases.
Example 3
PS C:\> Get-AzureRmPolicyAlias -NamespaceMatch 'compute'
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.Compute virtualMachines {Microsoft.Compute/licenseType, Microsoft.Compute/virtualMachines/availabilitySet.id, Microsoft...
Microsoft.Compute virtualMachines/extensions {Microsoft.Compute/virtualMachines/extensions/provisioningState, Microsoft.Compute/virtualMachi...
Microsoft.Compute virtualMachineScaleSets {Microsoft.Compute/VirtualMachineScaleSets/sku.name, Microsoft.Compute/VirtualMachineScaleSets/...
Microsoft.Compute virtualMachineScaleSets/extensions {Microsoft.Compute/virtualMachineScaleSets/extensions/provisioningState, Microsoft.Compute/virt...
Microsoft.Compute disks {Microsoft.Compute/imagePublisher, Microsoft.Compute/imageOffer, Microsoft.Compute/imageSku, Mi...
PS C:\>
Lists all provider resource types whose namespace matches 'compute' and contain an alias.
Example 4
PS C:\> Get-AzureRmPolicyAlias -ResourceTypeMatch 'virtual'
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.Compute virtualMachines {Microsoft.Compute/licenseType, Microsoft.Compute/virtualMachines/availabilitySet.id, Micro...
Microsoft.Compute virtualMachines/extensions {Microsoft.Compute/virtualMachines/extensions/provisioningState, Microsoft.Compute/virtualM...
Microsoft.Compute virtualMachineScaleSets {Microsoft.Compute/VirtualMachineScaleSets/sku.name, Microsoft.Compute/VirtualMachineScaleS...
Microsoft.Compute virtualMachineScaleSets/extensions {Microsoft.Compute/virtualMachineScaleSets/extensions/provisioningState, Microsoft.Compute/...
Microsoft.Network virtualNetworks {Microsoft.Network/virtualNetworks/subnets[*].routeTable.id, Microsoft.Network/virtualNetwo...
Microsoft.Network virtualNetworkGateways {Microsoft.Network/virtualNetworkGateways/sku.name, Microsoft.Network/virtualNetworkGateway...
Microsoft.Network virtualNetworks/subnets {Microsoft.Network/virtualNetworks/subnets/routeTable.id, Microsoft.Network/virtualNetworks...
Microsoft.Network virtualNetworks/virtualNetworkPeerings {Microsoft.Network/virtualNetworks/virtualNetworkPeerings/remoteVirtualNetwork.id}
Microsoft.Sql servers/virtualNetworkRules {Microsoft.Sql/servers/virtualNetworkRules/virtualNetworkSubnetId, Microsoft.Sql/servers/vi...
PS C:\>
Lists all provider resource types whose resource type matches 'virtual' and contain an alias.
Example 5
PS C:\> Get-AzureRmPolicyAlias -ResourceTypeMatch 'virtual' -ListAvailable
Namespace ResourceType Aliases
--------- ------------ -------
... ... ...
Microsoft.KeyVault locations/deleteVirtualNetworkOrSubnets {}
Microsoft.Network virtualNetworks {Microsoft.Network/virtualNetworks/subnets[*].routeTable.id,...
Microsoft.Network virtualNetworkGateways {Microsoft.Network/virtualNetworkGateways/sku.name, Microsof...
Microsoft.Network locations/virtualNetworkAvailableEndpointServices {}
... ... ...
PS C:\>
Lists all provider resource types whose resource type matches 'virtual', including those without aliases.
Example 6
PS C:\> Get-AzureRmPolicyAlias -NamespaceMatch 'compute' -ResourceTypeMatch 'virtual'
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.Compute virtualMachines {Microsoft.Compute/licenseType, Microsoft.Compute/virtualMachines/availabilitySet.id, Microsoft...
Microsoft.Compute virtualMachines/extensions {Microsoft.Compute/virtualMachines/extensions/provisioningState, Microsoft.Compute/virtualMachi...
Microsoft.Compute virtualMachineScaleSets {Microsoft.Compute/VirtualMachineScaleSets/sku.name, Microsoft.Compute/VirtualMachineScaleSets/...
Microsoft.Compute virtualMachineScaleSets/extensions {Microsoft.Compute/virtualMachineScaleSets/extensions/provisioningState, Microsoft.Compute/virt...
PS C:\>
Lists all provider resource types whose namespace matches 'compute' and resource type matches 'virtual' and contain an alias. Note: -NamespaceMatch and -ResourceTypeMatch provide exclusive matches, whereas the others are inclusive.
Example 7
PS C:\> Get-AzureRmPolicyAlias -AliasMatch 'virtual'
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.Compute virtualMachines {Microsoft.Compute/licenseType, Microsoft.Compute/virtualMachines/availabilitySet.id, Mi...
Microsoft.Compute virtualMachines/extensions {Microsoft.Compute/virtualMachines/extensions/provisioningState, Microsoft.Compute/virtu...
Microsoft.Compute virtualMachineScaleSets {Microsoft.Compute/VirtualMachineScaleSets/sku.name, Microsoft.Compute/VirtualMachineSca...
Microsoft.Compute virtualMachineScaleSets/extensions {Microsoft.Compute/virtualMachineScaleSets/extensions/provisioningState, Microsoft.Compu...
Microsoft.DocumentDB databaseAccounts {Microsoft.DocumentDB/databaseAccounts/sku.name, Microsoft.DocumentDB/databaseAccounts/v...
Microsoft.HDInsight clusters {Microsoft.HDInsight/clusters/clusterVersion, Microsoft.HDInsight/clusters/osType, Micro...
Microsoft.KeyVault vaults {Microsoft.KeyVault/vaults/sku.name, Microsoft.KeyVault/vaults/sku.family, Microsoft.Key...
Microsoft.Network virtualNetworks {Microsoft.Network/virtualNetworks/subnets[*].routeTable.id, Microsoft.Network/virtualNe...
Microsoft.Network virtualNetworkGateways {Microsoft.Network/virtualNetworkGateways/sku.name, Microsoft.Network/virtualNetworkGate...
Microsoft.Network virtualNetworks/subnets {Microsoft.Network/virtualNetworks/subnets/routeTable.id, Microsoft.Network/virtualNetwo...
Microsoft.Network virtualNetworks/virtualNetworkPeerings {Microsoft.Network/virtualNetworks/virtualNetworkPeerings/remoteVirtualNetwork.id}
Microsoft.Sql servers/virtualNetworkRules {Microsoft.Sql/servers/virtualNetworkRules/virtualNetworkSubnetId, Microsoft.Sql/servers...
Microsoft.Storage storageAccounts {Microsoft.Storage/storageAccounts/accountType, Microsoft.Storage/storageAccounts/sku.na...
PS C:\>
Lists all provider resource types that contain an alias matching 'virtual'.
Example 8
PS C:\> Get-AzureRmPolicyAlias -AliasMatch 'virtual' -PathMatch 'network'
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.Compute virtualMachines {Microsoft.Compute/licenseType, Microsoft.Compute/virtualMachines/availabilitySet.id, Mi...
Microsoft.Compute virtualMachines/extensions {Microsoft.Compute/virtualMachines/extensions/provisioningState, Microsoft.Compute/virtu...
Microsoft.Compute virtualMachineScaleSets {Microsoft.Compute/VirtualMachineScaleSets/sku.name, Microsoft.Compute/VirtualMachineSca...
Microsoft.Compute virtualMachineScaleSets/extensions {Microsoft.Compute/virtualMachineScaleSets/extensions/provisioningState, Microsoft.Compu...
Microsoft.DocumentDB databaseAccounts {Microsoft.DocumentDB/databaseAccounts/sku.name, Microsoft.DocumentDB/databaseAccounts/v...
Microsoft.HDInsight clusters {Microsoft.HDInsight/clusters/clusterVersion, Microsoft.HDInsight/clusters/osType, Micro...
Microsoft.KeyVault vaults {Microsoft.KeyVault/vaults/sku.name, Microsoft.KeyVault/vaults/sku.family, Microsoft.Key...
Microsoft.Network virtualNetworks {Microsoft.Network/virtualNetworks/subnets[*].routeTable.id, Microsoft.Network/virtualNe...
Microsoft.Network networkInterfaces {Microsoft.Network/networkInterfaces/ipconfigurations[*].subnet.id, Microsoft.Network/ne...
Microsoft.Network networkSecurityGroups {Microsoft.Network/networkSecurityGroups/securityRules[*].protocol, Microsoft.Network/ne...
Microsoft.Network virtualNetworkGateways {Microsoft.Network/virtualNetworkGateways/sku.name, Microsoft.Network/virtualNetworkGate...
Microsoft.Network virtualNetworks/subnets {Microsoft.Network/virtualNetworks/subnets/routeTable.id, Microsoft.Network/virtualNetwo...
Microsoft.Network virtualNetworks/virtualNetworkPeerings {Microsoft.Network/virtualNetworks/virtualNetworkPeerings/remoteVirtualNetwork.id}
Microsoft.Sql servers/virtualNetworkRules {Microsoft.Sql/servers/virtualNetworkRules/virtualNetworkSubnetId, Microsoft.Sql/servers...
Microsoft.Storage storageAccounts {Microsoft.Storage/storageAccounts/accountType, Microsoft.Storage/storageAccounts/sku.na...
PS C:\>
Lists all provider resource types that contain an alias matching 'virtual' or an alias with a path matching 'network'.
Example 9
PS C:\> Get-AzureRmPolicyAlias -ApiVersionMatch 'alpha'
Namespace ResourceType Aliases
--------- ------------ -------
Microsoft.Cache Redis {Microsoft.Cache/Redis/sku.name, Microsoft.Cache/Redis/sku.family, Microsoft.Cache/Redis/sku.capacity, Micros...
Microsoft.Cache Redis/firewallrules {Microsoft.Cache/Redis/firewallrules/startIP, Microsoft.Cache/Redis/firewallrules/endIP}
Microsoft.Security alerts {Microsoft.Security/alerts/state}
Microsoft.Security pricings {Microsoft.Security/pricings/pricingTier}
Microsoft.Security complianceResults {Microsoft.Security/complianceResults/resourceStatus}
PS C:\>
Lists all provider resource types with alpha api version or containing an alias with an alpha api version.
Parameters
-AliasMatch
Includes in the output items with aliases whose name matches this value.
Type: | String |
Aliases: | Alias |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApiVersion
When set, indicates the version of the resource provider API to use. If not specified, the API version is automatically determined as the latest available.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ApiVersionMatch
Includes in the output items whose resource types or aliases have a matching api version.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DefaultProfile
The credentials, account, tenant, and subscription used for communication with Azure.
Type: | IAzureContextContainer |
Aliases: | AzureRmContext, AzureCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ListAvailable
Includes in the output matching items with and without aliases.
Type: | SwitchParameter |
Aliases: | ShowAll |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LocationMatch
Includes in the output items whose resource types have a matching location.
Type: | String |
Aliases: | Location |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NamespaceMatch
Limits the output to items whose namespace matches this value.
Type: | String |
Aliases: | Name, Namespace |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PathMatch
Includes in the output items with aliases containing a path that matches this value.
Type: | String |
Aliases: | Path |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Pre
When set, indicates that the cmdlet should use pre-release API versions when automatically determining which version to use.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ResourceTypeMatch
Limits the output to items whose resource type matches this value.
Type: | String |
Aliases: | ResourceType, Resource |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Outputs
Notes
To expand the Aliases or any other property, pipe the output to
select -ExpandProperty <property>
. For example:Get-AzureRmPolicyAlias -NamespaceMatch 'Microsoft.Cache' -ApiVersionMatch 'alpha' | select -ExpandProperty Aliases | select -Property Name -ExpandProperty Paths
Additional properties are available in the output and can be displayed by piping the output to
Format-List
. For example:Get-AzureRmPolicyAlias -NamespaceMatch 'Web' -ResourceTypeMatch site -PathMatch cert | Format-List