azure-resource-manager-schemas/schemas/2021-06-01/Microsoft.Authorization.Res...

753 строки
23 KiB
JSON

{
"id": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.Authorization.Resources.json#",
"title": "Microsoft.Authorization",
"description": "Microsoft Authorization Resource Types",
"$schema": "http://json-schema.org/draft-04/schema#",
"subscription_resourceDefinitions": {
"policyDefinitions": {
"description": "Microsoft.Authorization/policyDefinitions",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"name": {
"description": "The name of the policy definition to create.",
"type": "string"
},
"properties": {
"description": "The policy definition properties.",
"oneOf": [
{
"$ref": "#/definitions/PolicyDefinitionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policyDefinitions"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"policySetDefinitions": {
"description": "Microsoft.Authorization/policySetDefinitions",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"name": {
"description": "The name of the policy set definition to create.",
"type": "string"
},
"properties": {
"description": "The policy definition properties.",
"oneOf": [
{
"$ref": "#/definitions/PolicySetDefinitionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policySetDefinitions"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
},
"managementGroup_resourceDefinitions": {
"policyDefinitions": {
"description": "Microsoft.Authorization/policyDefinitions",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"name": {
"description": "The name of the policy definition to create.",
"type": "string"
},
"properties": {
"description": "The policy definition properties.",
"oneOf": [
{
"$ref": "#/definitions/PolicyDefinitionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policyDefinitions"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"policySetDefinitions": {
"description": "Microsoft.Authorization/policySetDefinitions",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"name": {
"description": "The name of the policy set definition to create.",
"type": "string"
},
"properties": {
"description": "The policy definition properties.",
"oneOf": [
{
"$ref": "#/definitions/PolicySetDefinitionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policySetDefinitions"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
},
"tenant_resourceDefinitions": {
"policyDefinitions": {
"description": "Microsoft.Authorization/policyDefinitions",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"name": {
"description": "The name of the policy definition to create.",
"type": "string"
},
"properties": {
"description": "The policy definition properties.",
"oneOf": [
{
"$ref": "#/definitions/PolicyDefinitionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policyDefinitions"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"policySetDefinitions": {
"description": "Microsoft.Authorization/policySetDefinitions",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"name": {
"description": "The name of the policy set definition to create.",
"type": "string"
},
"properties": {
"description": "The policy definition properties.",
"oneOf": [
{
"$ref": "#/definitions/PolicySetDefinitionProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policySetDefinitions"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
},
"unknown_resourceDefinitions": {
"policyAssignments": {
"description": "Microsoft.Authorization/policyAssignments",
"properties": {
"apiVersion": {
"enum": [
"2021-06-01"
],
"type": "string"
},
"identity": {
"description": "The managed identity associated with the policy assignment.",
"oneOf": [
{
"$ref": "#/definitions/Identity"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"location": {
"description": "The location of the policy assignment. Only required when utilizing managed identity.",
"type": "string"
},
"name": {
"description": "The name of the policy assignment.",
"type": "string"
},
"properties": {
"description": "Properties for the policy assignment.",
"oneOf": [
{
"$ref": "#/definitions/PolicyAssignmentProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.Authorization/policyAssignments"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
},
"definitions": {
"Identity": {
"description": "Identity for the resource. Policy assignments support a maximum of one identity. That is either a system assigned identity or a single user assigned identity.",
"properties": {
"type": {
"description": "The identity type. This is the only required field when adding a system or user assigned identity to a resource.",
"oneOf": [
{
"enum": [
"SystemAssigned",
"UserAssigned",
"None"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"userAssignedIdentities": {
"description": "The user identity associated with the policy. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.",
"oneOf": [
{
"additionalProperties": {
"$ref": "#/definitions/UserAssignedIdentitiesValue"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"NonComplianceMessage": {
"description": "A message that describes why a resource is non-compliant with the policy. This is shown in 'deny' error messages and on resource's non-compliant compliance results.",
"properties": {
"message": {
"description": "A message that describes why a resource is non-compliant with the policy. This is shown in 'deny' error messages and on resource's non-compliant compliance results.",
"type": "string"
},
"policyDefinitionReferenceId": {
"description": "The policy definition reference ID within a policy set definition the message is intended for. This is only applicable if the policy assignment assigns a policy set definition. If this is not provided the message applies to all policies assigned by this policy assignment.",
"type": "string"
}
},
"required": [
"message"
],
"type": "object"
},
"ParameterDefinitionsValue": {
"description": "The definition of a parameter that can be provided to the policy.",
"properties": {
"allowedValues": {
"description": "The allowed values for the parameter.",
"oneOf": [
{
"items": {},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"defaultValue": {
"description": "The default value for the parameter if no value is provided.",
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"metadata": {
"description": "General metadata for the parameter.",
"oneOf": [
{
"$ref": "#/definitions/ParameterDefinitionsValueMetadata"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"description": "The data type of the parameter.",
"oneOf": [
{
"enum": [
"String",
"Array",
"Object",
"Boolean",
"Integer",
"Float",
"DateTime"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"ParameterDefinitionsValueMetadata": {
"additionalProperties": {
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"description": "General metadata for the parameter.",
"properties": {
"assignPermissions": {
"description": "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.",
"oneOf": [
{
"type": "boolean"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"description": {
"description": "The description of the parameter.",
"type": "string"
},
"displayName": {
"description": "The display name for the parameter.",
"type": "string"
},
"strongType": {
"description": "Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.",
"type": "string"
}
},
"type": "object"
},
"ParameterValuesValue": {
"description": "The value of a parameter.",
"properties": {
"value": {
"description": "The value of the parameter.",
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"PolicyAssignmentProperties": {
"description": "The policy assignment properties.",
"properties": {
"description": {
"description": "This message will be part of response in case of policy violation.",
"type": "string"
},
"displayName": {
"description": "The display name of the policy assignment.",
"type": "string"
},
"enforcementMode": {
"description": "The policy assignment enforcement mode. Possible values are Default and DoNotEnforce.",
"oneOf": [
{
"enum": [
"Default",
"DoNotEnforce"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"metadata": {
"description": "The policy assignment metadata. Metadata is an open ended object and is typically a collection of key value pairs.",
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"nonComplianceMessages": {
"description": "The messages that describe why a resource is non-compliant with the policy.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/NonComplianceMessage"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"notScopes": {
"description": "The policy's excluded scopes.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"parameters": {
"description": "The parameter values for the assigned policy rule. The keys are the parameter names."
},
"policyDefinitionId": {
"description": "The ID of the policy definition or policy set definition being assigned.",
"type": "string"
}
},
"type": "object"
},
"PolicyDefinitionGroup": {
"description": "The policy definition group.",
"properties": {
"additionalMetadataId": {
"description": "A resource ID of a resource that contains additional metadata about the group.",
"type": "string"
},
"category": {
"description": "The group's category.",
"type": "string"
},
"description": {
"description": "The group's description.",
"type": "string"
},
"displayName": {
"description": "The group's display name.",
"type": "string"
},
"name": {
"description": "The name of the group.",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"PolicyDefinitionProperties": {
"description": "The policy definition properties.",
"properties": {
"description": {
"description": "The policy definition description.",
"type": "string"
},
"displayName": {
"description": "The display name of the policy definition.",
"type": "string"
},
"metadata": {
"description": "The policy definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.",
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"mode": {
"default": "Indexed",
"description": "The policy definition mode. Some examples are All, Indexed, Microsoft.KeyVault.Data.",
"type": "string"
},
"parameters": {
"description": "The parameter definitions for parameters used in the policy rule. The keys are the parameter names."
},
"policyRule": {
"description": "The policy rule.",
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"policyType": {
"description": "The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.",
"oneOf": [
{
"enum": [
"NotSpecified",
"BuiltIn",
"Custom",
"Static"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"PolicyDefinitionReference": {
"description": "The policy definition reference.",
"properties": {
"groupNames": {
"description": "The name of the groups that this policy definition reference belongs to.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"parameters": {
"description": "The parameter values for the referenced policy rule. The keys are the parameter names."
},
"policyDefinitionId": {
"description": "The ID of the policy definition or policy set definition.",
"type": "string"
},
"policyDefinitionReferenceId": {
"description": "A unique id (within the policy set definition) for this policy definition reference.",
"type": "string"
}
},
"required": [
"policyDefinitionId"
],
"type": "object"
},
"PolicySetDefinitionProperties": {
"description": "The policy set definition properties.",
"properties": {
"description": {
"description": "The policy set definition description.",
"type": "string"
},
"displayName": {
"description": "The display name of the policy set definition.",
"type": "string"
},
"metadata": {
"description": "The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.",
"oneOf": [
{
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"parameters": {
"description": "The policy set definition parameters that can be used in policy definition references."
},
"policyDefinitionGroups": {
"description": "The metadata describing groups of policy definition references within the policy set definition.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/PolicyDefinitionGroup"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"policyDefinitions": {
"description": "An array of policy definition references.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/PolicyDefinitionReference"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"policyType": {
"description": "The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.",
"oneOf": [
{
"enum": [
"NotSpecified",
"BuiltIn",
"Custom",
"Static"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"policyDefinitions"
],
"type": "object"
},
"UserAssignedIdentitiesValue": {
"properties": {},
"type": "object"
}
}
}