Microsoft.Authorization policySetDefinitions/versions 2023-04-01

Bicep resource definition

The policySetDefinitions/versions resource type can be deployed with operations that target:

You can reference this resource type as a read-only resource at level of: Tenants

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Authorization/policySetDefinitions/versions resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.Authorization/policySetDefinitions/versions@2023-04-01' = {
  name: 'string'
  parent: resourceSymbolicName
  properties: {
    description: 'string'
    displayName: 'string'
    metadata: any()
    parameters: {
      {customized property}: {
        allowedValues: [
          any
        ]
        defaultValue: any()
        metadata: {
          assignPermissions: bool
          description: 'string'
          displayName: 'string'
          strongType: 'string'
          {customized property}: any()
        }
        schema: any()
        type: 'string'
      }
    }
    policyDefinitionGroups: [
      {
        additionalMetadataId: 'string'
        category: 'string'
        description: 'string'
        displayName: 'string'
        name: 'string'
      }
    ]
    policyDefinitions: [
      {
        groupNames: [
          'string'
        ]
        parameters: {
          {customized property}: {
            value: any()
          }
        }
        policyDefinitionId: 'string'
        policyDefinitionReferenceId: 'string'
      }
    ]
    policyType: 'string'
    version: 'string'
  }
}

Property values

policySetDefinitions/versions

Name Description Value
name The resource name

See how to set names and types for child resources in Bicep.
string (required)
parent In Bicep, you can specify the parent resource for a child resource. You only need to add this property when the child resource is declared outside of the parent resource.

For more information, see Child resource outside parent resource.
Symbolic name for resource of type: policySetDefinitions
properties The policy set definition version properties. PolicySetDefinitionVersionProperties

PolicySetDefinitionVersionProperties

Name Description Value
description The policy set definition description. string
displayName The display name of the policy set definition. string
metadata The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs. For Bicep, you can use the any() function.
parameters The policy set definition parameters that can be used in policy definition references. ParameterDefinitions
policyDefinitionGroups The metadata describing groups of policy definition references within the policy set definition. PolicyDefinitionGroup[]
policyDefinitions An array of policy definition references. PolicyDefinitionReference[] (required)
policyType The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static. 'BuiltIn'
'Custom'
'NotSpecified'
'Static'
version The policy set definition version in #.#.# format. string

ParameterDefinitions

Name Description Value
{customized property} ParameterDefinitionsValue

ParameterDefinitionsValue

Name Description Value
allowedValues The allowed values for the parameter. any[]
defaultValue The default value for the parameter if no value is provided. For Bicep, you can use the any() function.
metadata General metadata for the parameter. ParameterDefinitionsValueMetadata
schema Provides validation of parameter inputs during assignment using a self-defined JSON schema. This property is only supported for object-type parameters and follows the Json.NET Schema 2019-09 implementation. You can learn more about using schemas at https://json-schema.org/ and test draft schemas at https://www.jsonschemavalidator.net/. For Bicep, you can use the any() function.
type The data type of the parameter. 'Array'
'Boolean'
'DateTime'
'Float'
'Integer'
'Object'
'String'

ParameterDefinitionsValueMetadata

Name Description Value
assignPermissions Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope. bool
description The description of the parameter. string
displayName The display name for the parameter. string
strongType Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from. string
{customized property} For Bicep, you can use the any() function.

PolicyDefinitionGroup

Name Description Value
additionalMetadataId A resource ID of a resource that contains additional metadata about the group. string
category The group's category. string
description The group's description. string
displayName The group's display name. string
name The name of the group. string (required)

PolicyDefinitionReference

Name Description Value
groupNames The name of the groups that this policy definition reference belongs to. string[]
parameters The parameter values for the referenced policy rule. The keys are the parameter names. ParameterValues
policyDefinitionId The ID of the policy definition or policy set definition. string (required)
policyDefinitionReferenceId A unique id (within the policy set definition) for this policy definition reference. string

ParameterValues

Name Description Value
{customized property} ParameterValuesValue

ParameterValuesValue

Name Description Value
value The value of the parameter. For Bicep, you can use the any() function.

ARM template resource definition

The policySetDefinitions/versions resource type can be deployed with operations that target:

You can reference this resource type as a read-only resource at level of: Tenants

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Authorization/policySetDefinitions/versions resource, add the following JSON to your template.

{
  "type": "Microsoft.Authorization/policySetDefinitions/versions",
  "apiVersion": "2023-04-01",
  "name": "string",
  "properties": {
    "description": "string",
    "displayName": "string",
    "metadata": {},
    "parameters": {
      "{customized property}": {
        "allowedValues": [ object ],
        "defaultValue": {},
        "metadata": {
          "assignPermissions": "bool",
          "description": "string",
          "displayName": "string",
          "strongType": "string",
          "{customized property}": {}
        },
        "schema": {},
        "type": "string"
      }
    },
    "policyDefinitionGroups": [
      {
        "additionalMetadataId": "string",
        "category": "string",
        "description": "string",
        "displayName": "string",
        "name": "string"
      }
    ],
    "policyDefinitions": [
      {
        "groupNames": [ "string" ],
        "parameters": {
          "{customized property}": {
            "value": {}
          }
        },
        "policyDefinitionId": "string",
        "policyDefinitionReferenceId": "string"
      }
    ],
    "policyType": "string",
    "version": "string"
  }
}

Property values

policySetDefinitions/versions

Name Description Value
type The resource type 'Microsoft.Authorization/policySetDefinitions/versions'
apiVersion The resource api version '2023-04-01'
name The resource name

See how to set names and types for child resources in JSON ARM templates.
string (required)
properties The policy set definition version properties. PolicySetDefinitionVersionProperties

PolicySetDefinitionVersionProperties

Name Description Value
description The policy set definition description. string
displayName The display name of the policy set definition. string
metadata The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.
parameters The policy set definition parameters that can be used in policy definition references. ParameterDefinitions
policyDefinitionGroups The metadata describing groups of policy definition references within the policy set definition. PolicyDefinitionGroup[]
policyDefinitions An array of policy definition references. PolicyDefinitionReference[] (required)
policyType The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static. 'BuiltIn'
'Custom'
'NotSpecified'
'Static'
version The policy set definition version in #.#.# format. string

ParameterDefinitions

Name Description Value
{customized property} ParameterDefinitionsValue

ParameterDefinitionsValue

Name Description Value
allowedValues The allowed values for the parameter. any[]
defaultValue The default value for the parameter if no value is provided.
metadata General metadata for the parameter. ParameterDefinitionsValueMetadata
schema Provides validation of parameter inputs during assignment using a self-defined JSON schema. This property is only supported for object-type parameters and follows the Json.NET Schema 2019-09 implementation. You can learn more about using schemas at https://json-schema.org/ and test draft schemas at https://www.jsonschemavalidator.net/.
type The data type of the parameter. 'Array'
'Boolean'
'DateTime'
'Float'
'Integer'
'Object'
'String'

ParameterDefinitionsValueMetadata

Name Description Value
assignPermissions Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope. bool
description The description of the parameter. string
displayName The display name for the parameter. string
strongType Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from. string
{customized property}

PolicyDefinitionGroup

Name Description Value
additionalMetadataId A resource ID of a resource that contains additional metadata about the group. string
category The group's category. string
description The group's description. string
displayName The group's display name. string
name The name of the group. string (required)

PolicyDefinitionReference

Name Description Value
groupNames The name of the groups that this policy definition reference belongs to. string[]
parameters The parameter values for the referenced policy rule. The keys are the parameter names. ParameterValues
policyDefinitionId The ID of the policy definition or policy set definition. string (required)
policyDefinitionReferenceId A unique id (within the policy set definition) for this policy definition reference. string

ParameterValues

Name Description Value
{customized property} ParameterValuesValue

ParameterValuesValue

Name Description Value
value The value of the parameter.

Terraform (AzAPI provider) resource definition

The policySetDefinitions/versions resource type can be deployed with operations that target:

  • Management groups
  • Subscriptions

You can reference this resource type as a read-only resource at level of: Tenants

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.Authorization/policySetDefinitions/versions resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.Authorization/policySetDefinitions/versions@2023-04-01"
  name = "string"
  parent_id = "string"
  body = jsonencode({
    properties = {
      description = "string"
      displayName = "string"
      parameters = {
        {customized property} = {
          allowedValues = [ object ]
          metadata = {
            assignPermissions = bool
            description = "string"
            displayName = "string"
            strongType = "string"
          }
          type = "string"
        }
      }
      policyDefinitionGroups = [
        {
          additionalMetadataId = "string"
          category = "string"
          description = "string"
          displayName = "string"
          name = "string"
        }
      ]
      policyDefinitions = [
        {
          groupNames = [
            "string"
          ]
          parameters = {
            {customized property} = {}
          }
          policyDefinitionId = "string"
          policyDefinitionReferenceId = "string"
        }
      ]
      policyType = "string"
      version = "string"
    }
  })
}

Property values

policySetDefinitions/versions

Name Description Value
type The resource type "Microsoft.Authorization/policySetDefinitions/versions@2023-04-01"
name The resource name string (required)
parent_id The ID of the resource that is the parent for this resource. ID for resource of type: policySetDefinitions
properties The policy set definition version properties. PolicySetDefinitionVersionProperties

PolicySetDefinitionVersionProperties

Name Description Value
description The policy set definition description. string
displayName The display name of the policy set definition. string
metadata The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.
parameters The policy set definition parameters that can be used in policy definition references. ParameterDefinitions
policyDefinitionGroups The metadata describing groups of policy definition references within the policy set definition. PolicyDefinitionGroup[]
policyDefinitions An array of policy definition references. PolicyDefinitionReference[] (required)
policyType The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static. "BuiltIn"
"Custom"
"NotSpecified"
"Static"
version The policy set definition version in #.#.# format. string

ParameterDefinitions

Name Description Value
{customized property} ParameterDefinitionsValue

ParameterDefinitionsValue

Name Description Value
allowedValues The allowed values for the parameter. any[]
defaultValue The default value for the parameter if no value is provided.
metadata General metadata for the parameter. ParameterDefinitionsValueMetadata
schema Provides validation of parameter inputs during assignment using a self-defined JSON schema. This property is only supported for object-type parameters and follows the Json.NET Schema 2019-09 implementation. You can learn more about using schemas at https://json-schema.org/ and test draft schemas at https://www.jsonschemavalidator.net/.
type The data type of the parameter. "Array"
"Boolean"
"DateTime"
"Float"
"Integer"
"Object"
"String"

ParameterDefinitionsValueMetadata

Name Description Value
assignPermissions Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope. bool
description The description of the parameter. string
displayName The display name for the parameter. string
strongType Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from. string
{customized property}

PolicyDefinitionGroup

Name Description Value
additionalMetadataId A resource ID of a resource that contains additional metadata about the group. string
category The group's category. string
description The group's description. string
displayName The group's display name. string
name The name of the group. string (required)

PolicyDefinitionReference

Name Description Value
groupNames The name of the groups that this policy definition reference belongs to. string[]
parameters The parameter values for the referenced policy rule. The keys are the parameter names. ParameterValues
policyDefinitionId The ID of the policy definition or policy set definition. string (required)
policyDefinitionReferenceId A unique id (within the policy set definition) for this policy definition reference. string

ParameterValues

Name Description Value
{customized property} ParameterValuesValue

ParameterValuesValue

Name Description Value
value The value of the parameter.