1. Packages
  2. Azure Classic
  3. API Docs
  4. core
  5. ResourcePolicyAssignment

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi
azure logo

We recommend using Azure Native.

Viewing docs for Azure v4.42.0 (Older version)
published on Monday, Mar 9, 2026 by Pulumi

    Manages a Policy Assignment to a Resource.

    Example Usage

    using Pulumi;
    using Azure = Pulumi.Azure;
    
    class MyStack : Stack
    {
        public MyStack()
        {
            var exampleVirtualNetwork = Output.Create(Azure.Network.GetVirtualNetwork.InvokeAsync(new Azure.Network.GetVirtualNetworkArgs
            {
                Name = "production",
                ResourceGroupName = "networking",
            }));
            var exampleDefinition = new Azure.Policy.Definition("exampleDefinition", new Azure.Policy.DefinitionArgs
            {
                PolicyType = "Custom",
                Mode = "All",
                PolicyRule = @"	{
        ""if"": {
          ""not"": {
            ""field"": ""location"",
            ""equals"": ""westeurope""
          }
        },
        ""then"": {
          ""effect"": ""Deny""
        }
      }
    ",
            });
            var exampleResourcePolicyAssignment = new Azure.Core.ResourcePolicyAssignment("exampleResourcePolicyAssignment", new Azure.Core.ResourcePolicyAssignmentArgs
            {
                ResourceId = exampleVirtualNetwork.Apply(exampleVirtualNetwork => exampleVirtualNetwork.Id),
                PolicyDefinitionId = exampleDefinition.Id,
            });
        }
    
    }
    
    package main
    
    import (
    	"fmt"
    
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/network"
    	"github.com/pulumi/pulumi-azure/sdk/v4/go/azure/policy"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		exampleVirtualNetwork, err := network.LookupVirtualNetwork(ctx, &network.LookupVirtualNetworkArgs{
    			Name:              "production",
    			ResourceGroupName: "networking",
    		}, nil)
    		if err != nil {
    			return err
    		}
    		exampleDefinition, err := policy.NewDefinition(ctx, "exampleDefinition", &policy.DefinitionArgs{
    			PolicyType: pulumi.String("Custom"),
    			Mode:       pulumi.String("All"),
    			PolicyRule: pulumi.String(fmt.Sprintf("%v%v%v%v%v%v%v%v%v%v%v", "	{\n", "    \"if\": {\n", "      \"not\": {\n", "        \"field\": \"location\",\n", "        \"equals\": \"westeurope\"\n", "      }\n", "    },\n", "    \"then\": {\n", "      \"effect\": \"Deny\"\n", "    }\n", "  }\n")),
    		})
    		if err != nil {
    			return err
    		}
    		_, err = core.NewResourcePolicyAssignment(ctx, "exampleResourcePolicyAssignment", &core.ResourcePolicyAssignmentArgs{
    			ResourceId:         pulumi.String(exampleVirtualNetwork.Id),
    			PolicyDefinitionId: exampleDefinition.ID(),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    

    Example coming soon!

    import * as pulumi from "@pulumi/pulumi";
    import * as azure from "@pulumi/azure";
    
    const exampleVirtualNetwork = azure.network.getVirtualNetwork({
        name: "production",
        resourceGroupName: "networking",
    });
    const exampleDefinition = new azure.policy.Definition("exampleDefinition", {
        policyType: "Custom",
        mode: "All",
        policyRule: `	{
        "if": {
          "not": {
            "field": "location",
            "equals": "westeurope"
          }
        },
        "then": {
          "effect": "Deny"
        }
      }
    `,
    });
    const exampleResourcePolicyAssignment = new azure.core.ResourcePolicyAssignment("exampleResourcePolicyAssignment", {
        resourceId: exampleVirtualNetwork.then(exampleVirtualNetwork => exampleVirtualNetwork.id),
        policyDefinitionId: exampleDefinition.id,
    });
    
    import pulumi
    import pulumi_azure as azure
    
    example_virtual_network = azure.network.get_virtual_network(name="production",
        resource_group_name="networking")
    example_definition = azure.policy.Definition("exampleDefinition",
        policy_type="Custom",
        mode="All",
        policy_rule="""	{
        "if": {
          "not": {
            "field": "location",
            "equals": "westeurope"
          }
        },
        "then": {
          "effect": "Deny"
        }
      }
    """)
    example_resource_policy_assignment = azure.core.ResourcePolicyAssignment("exampleResourcePolicyAssignment",
        resource_id=example_virtual_network.id,
        policy_definition_id=example_definition.id)
    

    Example coming soon!

    Create ResourcePolicyAssignment Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new ResourcePolicyAssignment(name: string, args: ResourcePolicyAssignmentArgs, opts?: CustomResourceOptions);
    @overload
    def ResourcePolicyAssignment(resource_name: str,
                                 args: ResourcePolicyAssignmentArgs,
                                 opts: Optional[ResourceOptions] = None)
    
    @overload
    def ResourcePolicyAssignment(resource_name: str,
                                 opts: Optional[ResourceOptions] = None,
                                 policy_definition_id: Optional[str] = None,
                                 resource_id: Optional[str] = None,
                                 description: Optional[str] = None,
                                 display_name: Optional[str] = None,
                                 enforce: Optional[bool] = None,
                                 identity: Optional[ResourcePolicyAssignmentIdentityArgs] = None,
                                 location: Optional[str] = None,
                                 metadata: Optional[str] = None,
                                 name: Optional[str] = None,
                                 non_compliance_messages: Optional[Sequence[ResourcePolicyAssignmentNonComplianceMessageArgs]] = None,
                                 not_scopes: Optional[Sequence[str]] = None,
                                 parameters: Optional[str] = None)
    func NewResourcePolicyAssignment(ctx *Context, name string, args ResourcePolicyAssignmentArgs, opts ...ResourceOption) (*ResourcePolicyAssignment, error)
    public ResourcePolicyAssignment(string name, ResourcePolicyAssignmentArgs args, CustomResourceOptions? opts = null)
    public ResourcePolicyAssignment(String name, ResourcePolicyAssignmentArgs args)
    public ResourcePolicyAssignment(String name, ResourcePolicyAssignmentArgs args, CustomResourceOptions options)
    
    type: azure:core:ResourcePolicyAssignment
    properties: # The arguments to resource properties.
    options: # Bag of options to control resource's behavior.
    
    

    Parameters

    name string
    The unique name of the resource.
    args ResourcePolicyAssignmentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    resource_name str
    The unique name of the resource.
    args ResourcePolicyAssignmentArgs
    The arguments to resource properties.
    opts ResourceOptions
    Bag of options to control resource's behavior.
    ctx Context
    Context object for the current deployment.
    name string
    The unique name of the resource.
    args ResourcePolicyAssignmentArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ResourcePolicyAssignmentArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ResourcePolicyAssignmentArgs
    The arguments to resource properties.
    options CustomResourceOptions
    Bag of options to control resource's behavior.

    Constructor example

    The following reference example uses placeholder values for all input properties.

    var resourcePolicyAssignmentResource = new Azure.Core.ResourcePolicyAssignment("resourcePolicyAssignmentResource", new()
    {
        PolicyDefinitionId = "string",
        ResourceId = "string",
        Description = "string",
        DisplayName = "string",
        Enforce = false,
        Identity = new Azure.Core.Inputs.ResourcePolicyAssignmentIdentityArgs
        {
            Type = "string",
            PrincipalId = "string",
            TenantId = "string",
        },
        Location = "string",
        Metadata = "string",
        Name = "string",
        NonComplianceMessages = new[]
        {
            new Azure.Core.Inputs.ResourcePolicyAssignmentNonComplianceMessageArgs
            {
                Content = "string",
                PolicyDefinitionReferenceId = "string",
            },
        },
        NotScopes = new[]
        {
            "string",
        },
        Parameters = "string",
    });
    
    example, err := core.NewResourcePolicyAssignment(ctx, "resourcePolicyAssignmentResource", &core.ResourcePolicyAssignmentArgs{
    	PolicyDefinitionId: pulumi.String("string"),
    	ResourceId:         pulumi.String("string"),
    	Description:        pulumi.String("string"),
    	DisplayName:        pulumi.String("string"),
    	Enforce:            pulumi.Bool(false),
    	Identity: &core.ResourcePolicyAssignmentIdentityArgs{
    		Type:        pulumi.String("string"),
    		PrincipalId: pulumi.String("string"),
    		TenantId:    pulumi.String("string"),
    	},
    	Location: pulumi.String("string"),
    	Metadata: pulumi.String("string"),
    	Name:     pulumi.String("string"),
    	NonComplianceMessages: core.ResourcePolicyAssignmentNonComplianceMessageArray{
    		&core.ResourcePolicyAssignmentNonComplianceMessageArgs{
    			Content:                     pulumi.String("string"),
    			PolicyDefinitionReferenceId: pulumi.String("string"),
    		},
    	},
    	NotScopes: pulumi.StringArray{
    		pulumi.String("string"),
    	},
    	Parameters: pulumi.String("string"),
    })
    
    var resourcePolicyAssignmentResource = new ResourcePolicyAssignment("resourcePolicyAssignmentResource", ResourcePolicyAssignmentArgs.builder()
        .policyDefinitionId("string")
        .resourceId("string")
        .description("string")
        .displayName("string")
        .enforce(false)
        .identity(ResourcePolicyAssignmentIdentityArgs.builder()
            .type("string")
            .principalId("string")
            .tenantId("string")
            .build())
        .location("string")
        .metadata("string")
        .name("string")
        .nonComplianceMessages(ResourcePolicyAssignmentNonComplianceMessageArgs.builder()
            .content("string")
            .policyDefinitionReferenceId("string")
            .build())
        .notScopes("string")
        .parameters("string")
        .build());
    
    resource_policy_assignment_resource = azure.core.ResourcePolicyAssignment("resourcePolicyAssignmentResource",
        policy_definition_id="string",
        resource_id="string",
        description="string",
        display_name="string",
        enforce=False,
        identity={
            "type": "string",
            "principal_id": "string",
            "tenant_id": "string",
        },
        location="string",
        metadata="string",
        name="string",
        non_compliance_messages=[{
            "content": "string",
            "policy_definition_reference_id": "string",
        }],
        not_scopes=["string"],
        parameters="string")
    
    const resourcePolicyAssignmentResource = new azure.core.ResourcePolicyAssignment("resourcePolicyAssignmentResource", {
        policyDefinitionId: "string",
        resourceId: "string",
        description: "string",
        displayName: "string",
        enforce: false,
        identity: {
            type: "string",
            principalId: "string",
            tenantId: "string",
        },
        location: "string",
        metadata: "string",
        name: "string",
        nonComplianceMessages: [{
            content: "string",
            policyDefinitionReferenceId: "string",
        }],
        notScopes: ["string"],
        parameters: "string",
    });
    
    type: azure:core:ResourcePolicyAssignment
    properties:
        description: string
        displayName: string
        enforce: false
        identity:
            principalId: string
            tenantId: string
            type: string
        location: string
        metadata: string
        name: string
        nonComplianceMessages:
            - content: string
              policyDefinitionReferenceId: string
        notScopes:
            - string
        parameters: string
        policyDefinitionId: string
        resourceId: string
    

    ResourcePolicyAssignment Resource Properties

    To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

    Inputs

    In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

    The ResourcePolicyAssignment resource accepts the following input properties:

    PolicyDefinitionId string
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    ResourceId string
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    Description string
    A description which should be used for this Policy Assignment.
    DisplayName string
    The Display Name for this Policy Assignment.
    Enforce bool
    Specifies if this Policy should be enforced or not?
    Identity ResourcePolicyAssignmentIdentity
    An identity block as defined below.
    Location string
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    Metadata string
    A JSON mapping of any Metadata for this Policy.
    Name string
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    NonComplianceMessages List<ResourcePolicyAssignmentNonComplianceMessage>
    One or more non_compliance_message blocks as defined below.
    NotScopes List<string>
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    Parameters string
    A JSON mapping of any Parameters for this Policy.
    PolicyDefinitionId string
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    ResourceId string
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    Description string
    A description which should be used for this Policy Assignment.
    DisplayName string
    The Display Name for this Policy Assignment.
    Enforce bool
    Specifies if this Policy should be enforced or not?
    Identity ResourcePolicyAssignmentIdentityArgs
    An identity block as defined below.
    Location string
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    Metadata string
    A JSON mapping of any Metadata for this Policy.
    Name string
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    NonComplianceMessages []ResourcePolicyAssignmentNonComplianceMessageArgs
    One or more non_compliance_message blocks as defined below.
    NotScopes []string
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    Parameters string
    A JSON mapping of any Parameters for this Policy.
    policyDefinitionId String
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resourceId String
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description String
    A description which should be used for this Policy Assignment.
    displayName String
    The Display Name for this Policy Assignment.
    enforce Boolean
    Specifies if this Policy should be enforced or not?
    identity ResourcePolicyAssignmentIdentity
    An identity block as defined below.
    location String
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata String
    A JSON mapping of any Metadata for this Policy.
    name String
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    nonComplianceMessages List<ResourcePolicyAssignmentNonComplianceMessage>
    One or more non_compliance_message blocks as defined below.
    notScopes List<String>
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters String
    A JSON mapping of any Parameters for this Policy.
    policyDefinitionId string
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resourceId string
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description string
    A description which should be used for this Policy Assignment.
    displayName string
    The Display Name for this Policy Assignment.
    enforce boolean
    Specifies if this Policy should be enforced or not?
    identity ResourcePolicyAssignmentIdentity
    An identity block as defined below.
    location string
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata string
    A JSON mapping of any Metadata for this Policy.
    name string
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    nonComplianceMessages ResourcePolicyAssignmentNonComplianceMessage[]
    One or more non_compliance_message blocks as defined below.
    notScopes string[]
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters string
    A JSON mapping of any Parameters for this Policy.
    policy_definition_id str
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resource_id str
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description str
    A description which should be used for this Policy Assignment.
    display_name str
    The Display Name for this Policy Assignment.
    enforce bool
    Specifies if this Policy should be enforced or not?
    identity ResourcePolicyAssignmentIdentityArgs
    An identity block as defined below.
    location str
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata str
    A JSON mapping of any Metadata for this Policy.
    name str
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    non_compliance_messages Sequence[ResourcePolicyAssignmentNonComplianceMessageArgs]
    One or more non_compliance_message blocks as defined below.
    not_scopes Sequence[str]
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters str
    A JSON mapping of any Parameters for this Policy.
    policyDefinitionId String
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resourceId String
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description String
    A description which should be used for this Policy Assignment.
    displayName String
    The Display Name for this Policy Assignment.
    enforce Boolean
    Specifies if this Policy should be enforced or not?
    identity Property Map
    An identity block as defined below.
    location String
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata String
    A JSON mapping of any Metadata for this Policy.
    name String
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    nonComplianceMessages List<Property Map>
    One or more non_compliance_message blocks as defined below.
    notScopes List<String>
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters String
    A JSON mapping of any Parameters for this Policy.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the ResourcePolicyAssignment resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing ResourcePolicyAssignment Resource

    Get an existing ResourcePolicyAssignment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

    public static get(name: string, id: Input<ID>, state?: ResourcePolicyAssignmentState, opts?: CustomResourceOptions): ResourcePolicyAssignment
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            description: Optional[str] = None,
            display_name: Optional[str] = None,
            enforce: Optional[bool] = None,
            identity: Optional[ResourcePolicyAssignmentIdentityArgs] = None,
            location: Optional[str] = None,
            metadata: Optional[str] = None,
            name: Optional[str] = None,
            non_compliance_messages: Optional[Sequence[ResourcePolicyAssignmentNonComplianceMessageArgs]] = None,
            not_scopes: Optional[Sequence[str]] = None,
            parameters: Optional[str] = None,
            policy_definition_id: Optional[str] = None,
            resource_id: Optional[str] = None) -> ResourcePolicyAssignment
    func GetResourcePolicyAssignment(ctx *Context, name string, id IDInput, state *ResourcePolicyAssignmentState, opts ...ResourceOption) (*ResourcePolicyAssignment, error)
    public static ResourcePolicyAssignment Get(string name, Input<string> id, ResourcePolicyAssignmentState? state, CustomResourceOptions? opts = null)
    public static ResourcePolicyAssignment get(String name, Output<String> id, ResourcePolicyAssignmentState state, CustomResourceOptions options)
    resources:  _:    type: azure:core:ResourcePolicyAssignment    get:      id: ${id}
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    resource_name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    name
    The unique name of the resulting resource.
    id
    The unique provider ID of the resource to lookup.
    state
    Any extra arguments used during the lookup.
    opts
    A bag of options that control this resource's behavior.
    The following state arguments are supported:
    Description string
    A description which should be used for this Policy Assignment.
    DisplayName string
    The Display Name for this Policy Assignment.
    Enforce bool
    Specifies if this Policy should be enforced or not?
    Identity ResourcePolicyAssignmentIdentity
    An identity block as defined below.
    Location string
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    Metadata string
    A JSON mapping of any Metadata for this Policy.
    Name string
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    NonComplianceMessages List<ResourcePolicyAssignmentNonComplianceMessage>
    One or more non_compliance_message blocks as defined below.
    NotScopes List<string>
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    Parameters string
    A JSON mapping of any Parameters for this Policy.
    PolicyDefinitionId string
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    ResourceId string
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    Description string
    A description which should be used for this Policy Assignment.
    DisplayName string
    The Display Name for this Policy Assignment.
    Enforce bool
    Specifies if this Policy should be enforced or not?
    Identity ResourcePolicyAssignmentIdentityArgs
    An identity block as defined below.
    Location string
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    Metadata string
    A JSON mapping of any Metadata for this Policy.
    Name string
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    NonComplianceMessages []ResourcePolicyAssignmentNonComplianceMessageArgs
    One or more non_compliance_message blocks as defined below.
    NotScopes []string
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    Parameters string
    A JSON mapping of any Parameters for this Policy.
    PolicyDefinitionId string
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    ResourceId string
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description String
    A description which should be used for this Policy Assignment.
    displayName String
    The Display Name for this Policy Assignment.
    enforce Boolean
    Specifies if this Policy should be enforced or not?
    identity ResourcePolicyAssignmentIdentity
    An identity block as defined below.
    location String
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata String
    A JSON mapping of any Metadata for this Policy.
    name String
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    nonComplianceMessages List<ResourcePolicyAssignmentNonComplianceMessage>
    One or more non_compliance_message blocks as defined below.
    notScopes List<String>
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters String
    A JSON mapping of any Parameters for this Policy.
    policyDefinitionId String
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resourceId String
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description string
    A description which should be used for this Policy Assignment.
    displayName string
    The Display Name for this Policy Assignment.
    enforce boolean
    Specifies if this Policy should be enforced or not?
    identity ResourcePolicyAssignmentIdentity
    An identity block as defined below.
    location string
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata string
    A JSON mapping of any Metadata for this Policy.
    name string
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    nonComplianceMessages ResourcePolicyAssignmentNonComplianceMessage[]
    One or more non_compliance_message blocks as defined below.
    notScopes string[]
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters string
    A JSON mapping of any Parameters for this Policy.
    policyDefinitionId string
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resourceId string
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description str
    A description which should be used for this Policy Assignment.
    display_name str
    The Display Name for this Policy Assignment.
    enforce bool
    Specifies if this Policy should be enforced or not?
    identity ResourcePolicyAssignmentIdentityArgs
    An identity block as defined below.
    location str
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata str
    A JSON mapping of any Metadata for this Policy.
    name str
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    non_compliance_messages Sequence[ResourcePolicyAssignmentNonComplianceMessageArgs]
    One or more non_compliance_message blocks as defined below.
    not_scopes Sequence[str]
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters str
    A JSON mapping of any Parameters for this Policy.
    policy_definition_id str
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resource_id str
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.
    description String
    A description which should be used for this Policy Assignment.
    displayName String
    The Display Name for this Policy Assignment.
    enforce Boolean
    Specifies if this Policy should be enforced or not?
    identity Property Map
    An identity block as defined below.
    location String
    The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created.
    metadata String
    A JSON mapping of any Metadata for this Policy.
    name String
    The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created.
    nonComplianceMessages List<Property Map>
    One or more non_compliance_message blocks as defined below.
    notScopes List<String>
    Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy.
    parameters String
    A JSON mapping of any Parameters for this Policy.
    policyDefinitionId String
    The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
    resourceId String
    The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created.

    Supporting Types

    ResourcePolicyAssignmentIdentity, ResourcePolicyAssignmentIdentityArgs

    Type string
    The Type of Managed Identity which should be added to this Policy Definition. The only possible value is SystemAssigned.
    PrincipalId string
    The Principal ID of the Policy Assignment for this Resource.
    TenantId string
    The Tenant ID of the Policy Assignment for this Resource.
    Type string
    The Type of Managed Identity which should be added to this Policy Definition. The only possible value is SystemAssigned.
    PrincipalId string
    The Principal ID of the Policy Assignment for this Resource.
    TenantId string
    The Tenant ID of the Policy Assignment for this Resource.
    type String
    The Type of Managed Identity which should be added to this Policy Definition. The only possible value is SystemAssigned.
    principalId String
    The Principal ID of the Policy Assignment for this Resource.
    tenantId String
    The Tenant ID of the Policy Assignment for this Resource.
    type string
    The Type of Managed Identity which should be added to this Policy Definition. The only possible value is SystemAssigned.
    principalId string
    The Principal ID of the Policy Assignment for this Resource.
    tenantId string
    The Tenant ID of the Policy Assignment for this Resource.
    type str
    The Type of Managed Identity which should be added to this Policy Definition. The only possible value is SystemAssigned.
    principal_id str
    The Principal ID of the Policy Assignment for this Resource.
    tenant_id str
    The Tenant ID of the Policy Assignment for this Resource.
    type String
    The Type of Managed Identity which should be added to this Policy Definition. The only possible value is SystemAssigned.
    principalId String
    The Principal ID of the Policy Assignment for this Resource.
    tenantId String
    The Tenant ID of the Policy Assignment for this Resource.

    ResourcePolicyAssignmentNonComplianceMessage, ResourcePolicyAssignmentNonComplianceMessageArgs

    Content string
    The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies.
    PolicyDefinitionReferenceId string
    When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
    Content string
    The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies.
    PolicyDefinitionReferenceId string
    When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
    content String
    The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies.
    policyDefinitionReferenceId String
    When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
    content string
    The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies.
    policyDefinitionReferenceId string
    When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
    content str
    The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies.
    policy_definition_reference_id str
    When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
    content String
    The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies.
    policyDefinitionReferenceId String
    When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.

    Import

    Resource Policy Assignments can be imported using the resource id, e.g.

     $ pulumi import azure:core/resourcePolicyAssignment:ResourcePolicyAssignment example "{resource}/providers/Microsoft.Authorization/policyAssignments/assignment1"
    

    where {resource} is a Resource ID in the form /subscriptions/00000000-0000-0000-000000000000/resourceGroups/group1/providers/Microsoft.Network/virtualNetworks/network1.

    To learn more about importing existing cloud resources, see Importing resources.

    Package Details

    Repository
    Azure Classic pulumi/pulumi-azure
    License
    Apache-2.0
    Notes
    This Pulumi package is based on the azurerm Terraform Provider.
    azure logo

    We recommend using Azure Native.

    Viewing docs for Azure v4.42.0 (Older version)
    published on Monday, Mar 9, 2026 by Pulumi
      Try Pulumi Cloud free. Your team will thank you.