Policy Assignments - Create

Esta operación crea o actualiza una asignación de directiva con el ámbito y el nombre especificados. Las asignaciones de directivas se aplican a todos los recursos incluidos en su ámbito. Por ejemplo, cuando asigna una directiva en el ámbito del grupo de recursos, esa directiva se aplica a todos los recursos del grupo.

PUT https://management.azure.com/{scope}/providers/Microsoft.Authorization/policyAssignments/{policyAssignmentName}?api-version=2020-09-01

Parámetros de identificador URI

Name In Required Type Description
policyAssignmentName
path True
  • string

Nombre de la asignación de directiva.

scope
path True
  • string

Ámbito de la asignación de directiva. Los ámbitos válidos son: grupo de administración (formato: '/providers/Microsoft.Management/managementGroups/{managementGroup}'), suscripción (formato: '/subscriptions/{subscriptionId}'), grupo de recursos (formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}', o resource (formato: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/[{parentResourcePath}/]{resourceType}/{resourceName}'

api-version
query True
  • string

Versión de API que se usará para la operación.

Cuerpo de la solicitud

Name Type Description
identity

Identidad administrada asociada a la asignación de directiva.

location
  • string

Ubicación de la asignación de directiva. Solo es necesario cuando se utiliza la identidad administrada.

properties.description
  • string

Este mensaje formará parte de la respuesta en caso de infracción de directiva.

properties.displayName
  • string

Nombre para mostrar de la asignación de directiva.

properties.enforcementMode

Modo de cumplimiento de asignación de directiva. Los valores posibles son Default y DoNotEnforce.

properties.metadata
  • object

Metadatos de asignación de directiva. Los metadatos son un objeto de final abierto y normalmente son una colección de pares clave-valor.

properties.nonComplianceMessages

Mensajes que describen por qué un recurso no es compatible con la directiva.

properties.notScopes
  • string[]

Ámbitos excluidos de la directiva.

properties.parameters

Los valores de parámetro para la regla de directiva asignada. Las claves son los nombres de parámetro.

properties.policyDefinitionId
  • string

Identificador de la definición de directiva o la definición del conjunto de directivas que se va a asignar.

Respuestas

Name Type Description
201 Created

Creado: devuelve información sobre la nueva asignación de directiva.

Other Status Codes

Respuesta de error que describe el motivo del error de la operación.

Seguridad

azure_auth

Azure Active Directory flujo de OAuth2

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation suplantar la cuenta de usuario

Ejemplos

Create or update a policy assignment
Create or update a policy assignment with a managed identity
Create or update a policy assignment with multiple non-compliance messages
Create or update a policy assignment without enforcing policy effect during resource creation or update.

Create or update a policy assignment

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming?api-version=2020-09-01
{
  "properties": {
    "displayName": "Enforce resource naming rules",
    "description": "Force resource names to begin with given DeptA and end with -LC",
    "metadata": {
      "assignedBy": "Special Someone"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
    "parameters": {
      "prefix": {
        "value": "DeptA"
      },
      "suffix": {
        "value": "-LC"
      }
    },
    "nonComplianceMessages": [
      {
        "message": "Resource names must start with 'DeptA' and end with '-LC'."
      }
    ]
  }
}

Sample Response

{
  "properties": {
    "displayName": "Enforce resource naming rules",
    "description": "Force resource names to begin with given DeptA and end with -LC",
    "metadata": {
      "assignedBy": "Special Someone"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
    "notScopes": [],
    "parameters": {
      "prefix": {
        "value": "DeptA"
      },
      "suffix": {
        "value": "-LC"
      }
    },
    "enforcementMode": "Default",
    "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2",
    "nonComplianceMessages": [
      {
        "message": "Resource names must start with 'DeptA' and end with '-LC'."
      }
    ]
  },
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming",
  "type": "Microsoft.Authorization/policyAssignments",
  "name": "EnforceNaming"
}

Create or update a policy assignment with a managed identity

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming?api-version=2020-09-01
{
  "location": "eastus",
  "identity": {
    "type": "SystemAssigned"
  },
  "properties": {
    "displayName": "Enforce resource naming rules",
    "description": "Force resource names to begin with given DeptA and end with -LC",
    "metadata": {
      "assignedBy": "Foo Bar"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
    "parameters": {
      "prefix": {
        "value": "DeptA"
      },
      "suffix": {
        "value": "-LC"
      }
    },
    "enforcementMode": "Default"
  }
}

Sample Response

{
  "properties": {
    "displayName": "Enforce resource naming rules",
    "description": "Force resource names to begin with given DeptA and end with -LC",
    "metadata": {
      "assignedBy": "Special Someone"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
    "notScopes": [],
    "parameters": {
      "prefix": {
        "value": "DeptA"
      },
      "suffix": {
        "value": "-LC"
      }
    },
    "enforcementMode": "Default",
    "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2"
  },
  "identity": {
    "type": "SystemAssigned",
    "principalId": "e6d23f8d-af97-4fbc-bda6-00604e4e3d0a",
    "tenantId": "4bee2b8a-1bee-47c2-90e9-404241551135"
  },
  "location": "eastus",
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming",
  "type": "Microsoft.Authorization/policyAssignments",
  "name": "EnforceNaming"
}

Create or update a policy assignment with multiple non-compliance messages

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/securityInitAssignment?api-version=2020-09-01
{
  "properties": {
    "displayName": "Enforce security policies",
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/securityInitiative",
    "nonComplianceMessages": [
      {
        "message": "Resources must comply with all internal security policies. See <internal site URL> for more info."
      },
      {
        "message": "Resource names must start with 'DeptA' and end with '-LC'.",
        "policyDefinitionReferenceId": "10420126870854049575"
      },
      {
        "message": "Storage accounts must have firewall rules configured.",
        "policyDefinitionReferenceId": "8572513655450389710"
      }
    ]
  }
}

Sample Response

{
  "properties": {
    "displayName": "Enforce security policies",
    "metadata": {
      "assignedBy": "User 1"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/securityInitiative",
    "notScopes": [],
    "enforcementMode": "Default",
    "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2",
    "nonComplianceMessages": [
      {
        "message": "Resources must comply with all internal security policies. See <internal site URL> for more info."
      },
      {
        "message": "Resource names must start with 'DeptA' and end with '-LC'.",
        "policyDefinitionReferenceId": "10420126870854049575"
      },
      {
        "message": "Storage accounts must have firewall rules configured.",
        "policyDefinitionReferenceId": "8572513655450389710"
      }
    ]
  },
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/securityInitAssignment",
  "type": "Microsoft.Authorization/policyAssignments",
  "name": "securityInitAssignment"
}

Create or update a policy assignment without enforcing policy effect during resource creation or update.

Sample Request

PUT https://management.azure.com/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming?api-version=2020-09-01
{
  "properties": {
    "displayName": "Enforce resource naming rules",
    "description": "Force resource names to begin with given DeptA and end with -LC",
    "metadata": {
      "assignedBy": "Special Someone"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
    "parameters": {
      "prefix": {
        "value": "DeptA"
      },
      "suffix": {
        "value": "-LC"
      }
    },
    "enforcementMode": "DoNotEnforce"
  }
}

Sample Response

{
  "properties": {
    "displayName": "Enforce resource naming rules",
    "description": "Force resource names to begin with given DeptA and end with -LC",
    "metadata": {
      "assignedBy": "Special Someone"
    },
    "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
    "notScopes": [],
    "parameters": {
      "prefix": {
        "value": "DeptA"
      },
      "suffix": {
        "value": "-LC"
      }
    },
    "enforcementMode": "DoNotEnforce",
    "scope": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2"
  },
  "id": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyAssignments/EnforceNaming",
  "type": "Microsoft.Authorization/policyAssignments",
  "name": "EnforceNaming"
}

Definiciones

CloudError

Una respuesta de error de una operación de directiva.

enforcementMode

Modo de cumplimiento de asignación de directiva. Los valores posibles son Default y DoNotEnforce.

ErrorAdditionalInfo

Información adicional del error de administración de recursos.

ErrorResponse

Respuesta de error

Identity

Identidad del recurso.

NonComplianceMessage

Mensaje que describe por qué un recurso no es compatible con la directiva. Esto se muestra en los mensajes de error "denegar" y en los resultados de cumplimiento no compatibles del recurso.

ParameterValuesValue

Valor de un parámetro.

PolicyAssignment

Asignación de directiva.

ResourceIdentityType

Tipo de identidad. Este es el único campo necesario al agregar una identidad asignada por el sistema a un recurso.

CloudError

Una respuesta de error de una operación de directiva.

Name Type Description
error

Respuesta de error
Respuesta de error común para todas Azure Resource Manager API para devolver detalles de error para las operaciones con errores. (Esto también sigue el formato de respuesta de error de OData).

enforcementMode

Modo de cumplimiento de asignación de directiva. Los valores posibles son Default y DoNotEnforce.

Name Type Description
Default
  • string

El efecto de la directiva se aplica durante la creación o actualización de recursos.

DoNotEnforce
  • string

El efecto de la directiva no se aplica durante la creación o actualización de recursos.

ErrorAdditionalInfo

Información adicional del error de administración de recursos.

Name Type Description
info
  • object

Información adicional.

type
  • string

Tipo de información adicional.

ErrorResponse

Respuesta de error

Name Type Description
additionalInfo

Información adicional del error.

code
  • string

Código de error.

details

Los detalles del error.

message
  • string

El mensaje de error.

target
  • string

Destino del error.

Identity

Identidad del recurso.

Name Type Description
principalId
  • string

Identificador de entidad de seguridad de la identidad del recurso.

tenantId
  • string

Identificador de inquilino de la identidad del recurso.

type

Tipo de identidad. Este es el único campo necesario al agregar una identidad asignada por el sistema a un recurso.

NonComplianceMessage

Mensaje que describe por qué un recurso no es compatible con la directiva. Esto se muestra en los mensajes de error "denegar" y en los resultados de cumplimiento no compatibles del recurso.

Name Type Description
message
  • string

Mensaje que describe por qué un recurso no es compatible con la directiva. Esto se muestra en los mensajes de error "denegar" y en los resultados de cumplimiento no compatibles del recurso.

policyDefinitionReferenceId
  • string

Identificador de referencia de definición de directiva dentro de una definición de conjunto de directivas para la que está pensado el mensaje. Esto solo es aplicable si la asignación de directiva asigna una definición de conjunto de directivas. Si no se proporciona, el mensaje se aplica a todas las directivas asignadas por esta asignación de directiva.

ParameterValuesValue

Valor de un parámetro.

Name Type Description
value
  • object

Valor del parámetro.

PolicyAssignment

Asignación de directiva.

Name Type Description
id
  • string

Identificador de la asignación de directiva.

identity

Identidad administrada asociada a la asignación de directiva.

location
  • string

Ubicación de la asignación de directiva. Solo es necesario cuando se utiliza la identidad administrada.

name
  • string

Nombre de la asignación de directiva.

properties.description
  • string

Este mensaje formará parte de la respuesta en caso de infracción de directiva.

properties.displayName
  • string

Nombre para mostrar de la asignación de directiva.

properties.enforcementMode

Modo de cumplimiento de asignación de directiva. Los valores posibles son Default y DoNotEnforce.

properties.metadata
  • object

Metadatos de asignación de directiva. Los metadatos son un objeto de final abierto y normalmente son una colección de pares clave-valor.

properties.nonComplianceMessages

Mensajes que describen por qué un recurso no es compatible con la directiva.

properties.notScopes
  • string[]

Ámbitos excluidos de la directiva.

properties.parameters

Los valores de parámetro para la regla de directiva asignada. Las claves son los nombres de parámetro.

properties.policyDefinitionId
  • string

Identificador de la definición de directiva o la definición del conjunto de directivas que se va a asignar.

properties.scope
  • string

Ámbito de la asignación de directiva.

type
  • string

Tipo de la asignación de directiva.

ResourceIdentityType

Tipo de identidad. Este es el único campo necesario al agregar una identidad asignada por el sistema a un recurso.

Name Type Description
None
  • string

Indica que no hay ninguna identidad asociada al recurso o que se debe quitar la identidad existente.

SystemAssigned
  • string

Indica que una identidad asignada por el sistema está asociada al recurso.