We recommend using Azure Native.
azure.core.SubscriptionPolicyAssignment
Explore with Pulumi AI
Manages a Subscription Policy Assignment.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const current = azure.core.getSubscription({});
const example = new azure.policy.Definition("example", {
    name: "only-deploy-in-westeurope",
    policyType: "Custom",
    mode: "All",
    displayName: "Allowed resource types",
    policyRule: ` {
    "if": {
      "not": {
        "field": "location",
        "equals": "westeurope"
      }
    },
    "then": {
      "effect": "Deny"
    }
  }
`,
});
const exampleSubscriptionPolicyAssignment = new azure.core.SubscriptionPolicyAssignment("example", {
    name: "example",
    policyDefinitionId: example.id,
    subscriptionId: current.then(current => current.id),
});
import pulumi
import pulumi_azure as azure
current = azure.core.get_subscription()
example = azure.policy.Definition("example",
    name="only-deploy-in-westeurope",
    policy_type="Custom",
    mode="All",
    display_name="Allowed resource types",
    policy_rule=""" {
    "if": {
      "not": {
        "field": "location",
        "equals": "westeurope"
      }
    },
    "then": {
      "effect": "Deny"
    }
  }
""")
example_subscription_policy_assignment = azure.core.SubscriptionPolicyAssignment("example",
    name="example",
    policy_definition_id=example.id,
    subscription_id=current.id)
package main
import (
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/policy"
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		current, err := core.LookupSubscription(ctx, &core.LookupSubscriptionArgs{}, nil)
		if err != nil {
			return err
		}
		example, err := policy.NewDefinition(ctx, "example", &policy.DefinitionArgs{
			Name:        pulumi.String("only-deploy-in-westeurope"),
			PolicyType:  pulumi.String("Custom"),
			Mode:        pulumi.String("All"),
			DisplayName: pulumi.String("Allowed resource types"),
			PolicyRule: pulumi.String(` {
    "if": {
      "not": {
        "field": "location",
        "equals": "westeurope"
      }
    },
    "then": {
      "effect": "Deny"
    }
  }
`),
		})
		if err != nil {
			return err
		}
		_, err = core.NewSubscriptionPolicyAssignment(ctx, "example", &core.SubscriptionPolicyAssignmentArgs{
			Name:               pulumi.String("example"),
			PolicyDefinitionId: example.ID(),
			SubscriptionId:     pulumi.String(current.Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() => 
{
    var current = Azure.Core.GetSubscription.Invoke();
    var example = new Azure.Policy.Definition("example", new()
    {
        Name = "only-deploy-in-westeurope",
        PolicyType = "Custom",
        Mode = "All",
        DisplayName = "Allowed resource types",
        PolicyRule = @" {
    ""if"": {
      ""not"": {
        ""field"": ""location"",
        ""equals"": ""westeurope""
      }
    },
    ""then"": {
      ""effect"": ""Deny""
    }
  }
",
    });
    var exampleSubscriptionPolicyAssignment = new Azure.Core.SubscriptionPolicyAssignment("example", new()
    {
        Name = "example",
        PolicyDefinitionId = example.Id,
        SubscriptionId = current.Apply(getSubscriptionResult => getSubscriptionResult.Id),
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.CoreFunctions;
import com.pulumi.azure.core.inputs.GetSubscriptionArgs;
import com.pulumi.azure.policy.Definition;
import com.pulumi.azure.policy.DefinitionArgs;
import com.pulumi.azure.core.SubscriptionPolicyAssignment;
import com.pulumi.azure.core.SubscriptionPolicyAssignmentArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
    public static void main(String[] args) {
        Pulumi.run(App::stack);
    }
    public static void stack(Context ctx) {
        final var current = CoreFunctions.getSubscription();
        var example = new Definition("example", DefinitionArgs.builder()
            .name("only-deploy-in-westeurope")
            .policyType("Custom")
            .mode("All")
            .displayName("Allowed resource types")
            .policyRule("""
 {
    "if": {
      "not": {
        "field": "location",
        "equals": "westeurope"
      }
    },
    "then": {
      "effect": "Deny"
    }
  }
            """)
            .build());
        var exampleSubscriptionPolicyAssignment = new SubscriptionPolicyAssignment("exampleSubscriptionPolicyAssignment", SubscriptionPolicyAssignmentArgs.builder()
            .name("example")
            .policyDefinitionId(example.id())
            .subscriptionId(current.applyValue(getSubscriptionResult -> getSubscriptionResult.id()))
            .build());
    }
}
resources:
  example:
    type: azure:policy:Definition
    properties:
      name: only-deploy-in-westeurope
      policyType: Custom
      mode: All
      displayName: Allowed resource types
      policyRule: |2
         {
            "if": {
              "not": {
                "field": "location",
                "equals": "westeurope"
              }
            },
            "then": {
              "effect": "Deny"
            }
          }
  exampleSubscriptionPolicyAssignment:
    type: azure:core:SubscriptionPolicyAssignment
    name: example
    properties:
      name: example
      policyDefinitionId: ${example.id}
      subscriptionId: ${current.id}
variables:
  current:
    fn::invoke:
      function: azure:core:getSubscription
      arguments: {}
Create SubscriptionPolicyAssignment Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new SubscriptionPolicyAssignment(name: string, args: SubscriptionPolicyAssignmentArgs, opts?: CustomResourceOptions);@overload
def SubscriptionPolicyAssignment(resource_name: str,
                                 args: SubscriptionPolicyAssignmentArgs,
                                 opts: Optional[ResourceOptions] = None)
@overload
def SubscriptionPolicyAssignment(resource_name: str,
                                 opts: Optional[ResourceOptions] = None,
                                 policy_definition_id: Optional[str] = None,
                                 subscription_id: Optional[str] = None,
                                 name: Optional[str] = None,
                                 identity: Optional[SubscriptionPolicyAssignmentIdentityArgs] = None,
                                 location: Optional[str] = None,
                                 metadata: Optional[str] = None,
                                 description: Optional[str] = None,
                                 non_compliance_messages: Optional[Sequence[SubscriptionPolicyAssignmentNonComplianceMessageArgs]] = None,
                                 not_scopes: Optional[Sequence[str]] = None,
                                 overrides: Optional[Sequence[SubscriptionPolicyAssignmentOverrideArgs]] = None,
                                 parameters: Optional[str] = None,
                                 enforce: Optional[bool] = None,
                                 resource_selectors: Optional[Sequence[SubscriptionPolicyAssignmentResourceSelectorArgs]] = None,
                                 display_name: Optional[str] = None)func NewSubscriptionPolicyAssignment(ctx *Context, name string, args SubscriptionPolicyAssignmentArgs, opts ...ResourceOption) (*SubscriptionPolicyAssignment, error)public SubscriptionPolicyAssignment(string name, SubscriptionPolicyAssignmentArgs args, CustomResourceOptions? opts = null)
public SubscriptionPolicyAssignment(String name, SubscriptionPolicyAssignmentArgs args)
public SubscriptionPolicyAssignment(String name, SubscriptionPolicyAssignmentArgs args, CustomResourceOptions options)
type: azure:core:SubscriptionPolicyAssignment
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 SubscriptionPolicyAssignmentArgs
- 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 SubscriptionPolicyAssignmentArgs
- 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 SubscriptionPolicyAssignmentArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args SubscriptionPolicyAssignmentArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args SubscriptionPolicyAssignmentArgs
- 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 subscriptionPolicyAssignmentResource = new Azure.Core.SubscriptionPolicyAssignment("subscriptionPolicyAssignmentResource", new()
{
    PolicyDefinitionId = "string",
    SubscriptionId = "string",
    Name = "string",
    Identity = new Azure.Core.Inputs.SubscriptionPolicyAssignmentIdentityArgs
    {
        Type = "string",
        IdentityIds = new[]
        {
            "string",
        },
        PrincipalId = "string",
        TenantId = "string",
    },
    Location = "string",
    Metadata = "string",
    Description = "string",
    NonComplianceMessages = new[]
    {
        new Azure.Core.Inputs.SubscriptionPolicyAssignmentNonComplianceMessageArgs
        {
            Content = "string",
            PolicyDefinitionReferenceId = "string",
        },
    },
    NotScopes = new[]
    {
        "string",
    },
    Overrides = new[]
    {
        new Azure.Core.Inputs.SubscriptionPolicyAssignmentOverrideArgs
        {
            Value = "string",
            Selectors = new[]
            {
                new Azure.Core.Inputs.SubscriptionPolicyAssignmentOverrideSelectorArgs
                {
                    Ins = new[]
                    {
                        "string",
                    },
                    Kind = "string",
                    NotIns = new[]
                    {
                        "string",
                    },
                },
            },
        },
    },
    Parameters = "string",
    Enforce = false,
    ResourceSelectors = new[]
    {
        new Azure.Core.Inputs.SubscriptionPolicyAssignmentResourceSelectorArgs
        {
            Selectors = new[]
            {
                new Azure.Core.Inputs.SubscriptionPolicyAssignmentResourceSelectorSelectorArgs
                {
                    Kind = "string",
                    Ins = new[]
                    {
                        "string",
                    },
                    NotIns = new[]
                    {
                        "string",
                    },
                },
            },
            Name = "string",
        },
    },
    DisplayName = "string",
});
example, err := core.NewSubscriptionPolicyAssignment(ctx, "subscriptionPolicyAssignmentResource", &core.SubscriptionPolicyAssignmentArgs{
	PolicyDefinitionId: pulumi.String("string"),
	SubscriptionId:     pulumi.String("string"),
	Name:               pulumi.String("string"),
	Identity: &core.SubscriptionPolicyAssignmentIdentityArgs{
		Type: pulumi.String("string"),
		IdentityIds: pulumi.StringArray{
			pulumi.String("string"),
		},
		PrincipalId: pulumi.String("string"),
		TenantId:    pulumi.String("string"),
	},
	Location:    pulumi.String("string"),
	Metadata:    pulumi.String("string"),
	Description: pulumi.String("string"),
	NonComplianceMessages: core.SubscriptionPolicyAssignmentNonComplianceMessageArray{
		&core.SubscriptionPolicyAssignmentNonComplianceMessageArgs{
			Content:                     pulumi.String("string"),
			PolicyDefinitionReferenceId: pulumi.String("string"),
		},
	},
	NotScopes: pulumi.StringArray{
		pulumi.String("string"),
	},
	Overrides: core.SubscriptionPolicyAssignmentOverrideArray{
		&core.SubscriptionPolicyAssignmentOverrideArgs{
			Value: pulumi.String("string"),
			Selectors: core.SubscriptionPolicyAssignmentOverrideSelectorArray{
				&core.SubscriptionPolicyAssignmentOverrideSelectorArgs{
					Ins: pulumi.StringArray{
						pulumi.String("string"),
					},
					Kind: pulumi.String("string"),
					NotIns: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
		},
	},
	Parameters: pulumi.String("string"),
	Enforce:    pulumi.Bool(false),
	ResourceSelectors: core.SubscriptionPolicyAssignmentResourceSelectorArray{
		&core.SubscriptionPolicyAssignmentResourceSelectorArgs{
			Selectors: core.SubscriptionPolicyAssignmentResourceSelectorSelectorArray{
				&core.SubscriptionPolicyAssignmentResourceSelectorSelectorArgs{
					Kind: pulumi.String("string"),
					Ins: pulumi.StringArray{
						pulumi.String("string"),
					},
					NotIns: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
			Name: pulumi.String("string"),
		},
	},
	DisplayName: pulumi.String("string"),
})
var subscriptionPolicyAssignmentResource = new SubscriptionPolicyAssignment("subscriptionPolicyAssignmentResource", SubscriptionPolicyAssignmentArgs.builder()
    .policyDefinitionId("string")
    .subscriptionId("string")
    .name("string")
    .identity(SubscriptionPolicyAssignmentIdentityArgs.builder()
        .type("string")
        .identityIds("string")
        .principalId("string")
        .tenantId("string")
        .build())
    .location("string")
    .metadata("string")
    .description("string")
    .nonComplianceMessages(SubscriptionPolicyAssignmentNonComplianceMessageArgs.builder()
        .content("string")
        .policyDefinitionReferenceId("string")
        .build())
    .notScopes("string")
    .overrides(SubscriptionPolicyAssignmentOverrideArgs.builder()
        .value("string")
        .selectors(SubscriptionPolicyAssignmentOverrideSelectorArgs.builder()
            .ins("string")
            .kind("string")
            .notIns("string")
            .build())
        .build())
    .parameters("string")
    .enforce(false)
    .resourceSelectors(SubscriptionPolicyAssignmentResourceSelectorArgs.builder()
        .selectors(SubscriptionPolicyAssignmentResourceSelectorSelectorArgs.builder()
            .kind("string")
            .ins("string")
            .notIns("string")
            .build())
        .name("string")
        .build())
    .displayName("string")
    .build());
subscription_policy_assignment_resource = azure.core.SubscriptionPolicyAssignment("subscriptionPolicyAssignmentResource",
    policy_definition_id="string",
    subscription_id="string",
    name="string",
    identity={
        "type": "string",
        "identity_ids": ["string"],
        "principal_id": "string",
        "tenant_id": "string",
    },
    location="string",
    metadata="string",
    description="string",
    non_compliance_messages=[{
        "content": "string",
        "policy_definition_reference_id": "string",
    }],
    not_scopes=["string"],
    overrides=[{
        "value": "string",
        "selectors": [{
            "ins": ["string"],
            "kind": "string",
            "not_ins": ["string"],
        }],
    }],
    parameters="string",
    enforce=False,
    resource_selectors=[{
        "selectors": [{
            "kind": "string",
            "ins": ["string"],
            "not_ins": ["string"],
        }],
        "name": "string",
    }],
    display_name="string")
const subscriptionPolicyAssignmentResource = new azure.core.SubscriptionPolicyAssignment("subscriptionPolicyAssignmentResource", {
    policyDefinitionId: "string",
    subscriptionId: "string",
    name: "string",
    identity: {
        type: "string",
        identityIds: ["string"],
        principalId: "string",
        tenantId: "string",
    },
    location: "string",
    metadata: "string",
    description: "string",
    nonComplianceMessages: [{
        content: "string",
        policyDefinitionReferenceId: "string",
    }],
    notScopes: ["string"],
    overrides: [{
        value: "string",
        selectors: [{
            ins: ["string"],
            kind: "string",
            notIns: ["string"],
        }],
    }],
    parameters: "string",
    enforce: false,
    resourceSelectors: [{
        selectors: [{
            kind: "string",
            ins: ["string"],
            notIns: ["string"],
        }],
        name: "string",
    }],
    displayName: "string",
});
type: azure:core:SubscriptionPolicyAssignment
properties:
    description: string
    displayName: string
    enforce: false
    identity:
        identityIds:
            - string
        principalId: string
        tenantId: string
        type: string
    location: string
    metadata: string
    name: string
    nonComplianceMessages:
        - content: string
          policyDefinitionReferenceId: string
    notScopes:
        - string
    overrides:
        - selectors:
            - ins:
                - string
              kind: string
              notIns:
                - string
          value: string
    parameters: string
    policyDefinitionId: string
    resourceSelectors:
        - name: string
          selectors:
            - ins:
                - string
              kind: string
              notIns:
                - string
    subscriptionId: string
SubscriptionPolicyAssignment 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 SubscriptionPolicyAssignment resource accepts the following input properties:
- PolicyDefinition stringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- SubscriptionId string
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- Identity
SubscriptionPolicy Assignment Identity 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- NonCompliance List<SubscriptionMessages Policy Assignment Non Compliance Message> 
- One or more non_compliance_messageblocks 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.
- Overrides
List<SubscriptionPolicy Assignment Override> 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- Parameters string
- A JSON mapping of any Parameters for this Policy.
- ResourceSelectors List<SubscriptionPolicy Assignment Resource Selector> 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- PolicyDefinition stringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- SubscriptionId string
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- Identity
SubscriptionPolicy Assignment Identity Args 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- NonCompliance []SubscriptionMessages Policy Assignment Non Compliance Message Args 
- One or more non_compliance_messageblocks 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.
- Overrides
[]SubscriptionPolicy Assignment Override Args 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- Parameters string
- A JSON mapping of any Parameters for this Policy.
- ResourceSelectors []SubscriptionPolicy Assignment Resource Selector Args 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- policyDefinition StringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- subscriptionId String
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity
SubscriptionPolicy Assignment Identity 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- nonCompliance List<SubscriptionMessages Policy Assignment Non Compliance Message> 
- One or more non_compliance_messageblocks 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.
- overrides
List<SubscriptionPolicy Assignment Override> 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters String
- A JSON mapping of any Parameters for this Policy.
- resourceSelectors List<SubscriptionPolicy Assignment Resource Selector> 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- policyDefinition stringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- subscriptionId string
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity
SubscriptionPolicy Assignment Identity 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- nonCompliance SubscriptionMessages Policy Assignment Non Compliance Message[] 
- One or more non_compliance_messageblocks 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.
- overrides
SubscriptionPolicy Assignment Override[] 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters string
- A JSON mapping of any Parameters for this Policy.
- resourceSelectors SubscriptionPolicy Assignment Resource Selector[] 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- policy_definition_ strid 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- subscription_id str
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity
SubscriptionPolicy Assignment Identity Args 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- non_compliance_ Sequence[Subscriptionmessages Policy Assignment Non Compliance Message Args] 
- One or more non_compliance_messageblocks 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.
- overrides
Sequence[SubscriptionPolicy Assignment Override Args] 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters str
- A JSON mapping of any Parameters for this Policy.
- resource_selectors Sequence[SubscriptionPolicy Assignment Resource Selector Args] 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- policyDefinition StringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- subscriptionId String
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity Property Map
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- nonCompliance List<Property Map>Messages 
- One or more non_compliance_messageblocks 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.
- overrides List<Property Map>
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters String
- A JSON mapping of any Parameters for this Policy.
- resourceSelectors List<Property Map>
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
Outputs
All input properties are implicitly available as output properties. Additionally, the SubscriptionPolicyAssignment 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 SubscriptionPolicyAssignment Resource
Get an existing SubscriptionPolicyAssignment 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?: SubscriptionPolicyAssignmentState, opts?: CustomResourceOptions): SubscriptionPolicyAssignment@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[SubscriptionPolicyAssignmentIdentityArgs] = None,
        location: Optional[str] = None,
        metadata: Optional[str] = None,
        name: Optional[str] = None,
        non_compliance_messages: Optional[Sequence[SubscriptionPolicyAssignmentNonComplianceMessageArgs]] = None,
        not_scopes: Optional[Sequence[str]] = None,
        overrides: Optional[Sequence[SubscriptionPolicyAssignmentOverrideArgs]] = None,
        parameters: Optional[str] = None,
        policy_definition_id: Optional[str] = None,
        resource_selectors: Optional[Sequence[SubscriptionPolicyAssignmentResourceSelectorArgs]] = None,
        subscription_id: Optional[str] = None) -> SubscriptionPolicyAssignmentfunc GetSubscriptionPolicyAssignment(ctx *Context, name string, id IDInput, state *SubscriptionPolicyAssignmentState, opts ...ResourceOption) (*SubscriptionPolicyAssignment, error)public static SubscriptionPolicyAssignment Get(string name, Input<string> id, SubscriptionPolicyAssignmentState? state, CustomResourceOptions? opts = null)public static SubscriptionPolicyAssignment get(String name, Output<String> id, SubscriptionPolicyAssignmentState state, CustomResourceOptions options)resources:  _:    type: azure:core:SubscriptionPolicyAssignment    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.
- 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? Defaults to true.
- Identity
SubscriptionPolicy Assignment Identity 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- NonCompliance List<SubscriptionMessages Policy Assignment Non Compliance Message> 
- One or more non_compliance_messageblocks 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.
- Overrides
List<SubscriptionPolicy Assignment Override> 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- Parameters string
- A JSON mapping of any Parameters for this Policy.
- PolicyDefinition stringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- ResourceSelectors List<SubscriptionPolicy Assignment Resource Selector> 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- SubscriptionId string
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- Identity
SubscriptionPolicy Assignment Identity Args 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- NonCompliance []SubscriptionMessages Policy Assignment Non Compliance Message Args 
- One or more non_compliance_messageblocks 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.
- Overrides
[]SubscriptionPolicy Assignment Override Args 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- Parameters string
- A JSON mapping of any Parameters for this Policy.
- PolicyDefinition stringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- ResourceSelectors []SubscriptionPolicy Assignment Resource Selector Args 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- SubscriptionId string
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity
SubscriptionPolicy Assignment Identity 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- nonCompliance List<SubscriptionMessages Policy Assignment Non Compliance Message> 
- One or more non_compliance_messageblocks 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.
- overrides
List<SubscriptionPolicy Assignment Override> 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters String
- A JSON mapping of any Parameters for this Policy.
- policyDefinition StringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- resourceSelectors List<SubscriptionPolicy Assignment Resource Selector> 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- subscriptionId String
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity
SubscriptionPolicy Assignment Identity 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- nonCompliance SubscriptionMessages Policy Assignment Non Compliance Message[] 
- One or more non_compliance_messageblocks 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.
- overrides
SubscriptionPolicy Assignment Override[] 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters string
- A JSON mapping of any Parameters for this Policy.
- policyDefinition stringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- resourceSelectors SubscriptionPolicy Assignment Resource Selector[] 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- subscriptionId string
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity
SubscriptionPolicy Assignment Identity Args 
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- non_compliance_ Sequence[Subscriptionmessages Policy Assignment Non Compliance Message Args] 
- One or more non_compliance_messageblocks 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.
- overrides
Sequence[SubscriptionPolicy Assignment Override Args] 
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters str
- A JSON mapping of any Parameters for this Policy.
- policy_definition_ strid 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- resource_selectors Sequence[SubscriptionPolicy Assignment Resource Selector Args] 
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- subscription_id str
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new 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? Defaults to true.
- identity Property Map
- An - identityblock as defined below.- Note: The - locationfield must also be specified when- identityis specified.
- 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 Policy Assignment to be created. Cannot exceed 64 characters in length.
- nonCompliance List<Property Map>Messages 
- One or more non_compliance_messageblocks 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.
- overrides List<Property Map>
- One or more overridesblocks as defined below. More detail aboutoverridesandresource_selectorssee policy assignment structure
- parameters String
- A JSON mapping of any Parameters for this Policy.
- policyDefinition StringId 
- The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created.
- resourceSelectors List<Property Map>
- One or more resource_selectorsblocks as defined below to filter polices by resource properties.
- subscriptionId String
- The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created.
Supporting Types
SubscriptionPolicyAssignmentIdentity, SubscriptionPolicyAssignmentIdentityArgs        
- Type string
- The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssignedorUserAssigned.
- IdentityIds List<string>
- A list of User Managed Identity IDs which should be assigned to the Policy Definition. - NOTE: This is required when - typeis set to- UserAssigned.
- PrincipalId string
- The Principal ID of the Policy Assignment for this Subscription.
- TenantId string
- The Tenant ID of the Policy Assignment for this Subscription.
- Type string
- The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssignedorUserAssigned.
- IdentityIds []string
- A list of User Managed Identity IDs which should be assigned to the Policy Definition. - NOTE: This is required when - typeis set to- UserAssigned.
- PrincipalId string
- The Principal ID of the Policy Assignment for this Subscription.
- TenantId string
- The Tenant ID of the Policy Assignment for this Subscription.
- type String
- The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssignedorUserAssigned.
- identityIds List<String>
- A list of User Managed Identity IDs which should be assigned to the Policy Definition. - NOTE: This is required when - typeis set to- UserAssigned.
- principalId String
- The Principal ID of the Policy Assignment for this Subscription.
- tenantId String
- The Tenant ID of the Policy Assignment for this Subscription.
- type string
- The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssignedorUserAssigned.
- identityIds string[]
- A list of User Managed Identity IDs which should be assigned to the Policy Definition. - NOTE: This is required when - typeis set to- UserAssigned.
- principalId string
- The Principal ID of the Policy Assignment for this Subscription.
- tenantId string
- The Tenant ID of the Policy Assignment for this Subscription.
- type str
- The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssignedorUserAssigned.
- identity_ids Sequence[str]
- A list of User Managed Identity IDs which should be assigned to the Policy Definition. - NOTE: This is required when - typeis set to- UserAssigned.
- principal_id str
- The Principal ID of the Policy Assignment for this Subscription.
- tenant_id str
- The Tenant ID of the Policy Assignment for this Subscription.
- type String
- The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssignedorUserAssigned.
- identityIds List<String>
- A list of User Managed Identity IDs which should be assigned to the Policy Definition. - NOTE: This is required when - typeis set to- UserAssigned.
- principalId String
- The Principal ID of the Policy Assignment for this Subscription.
- tenantId String
- The Tenant ID of the Policy Assignment for this Subscription.
SubscriptionPolicyAssignmentNonComplianceMessage, SubscriptionPolicyAssignmentNonComplianceMessageArgs            
- Content string
- The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_idis specified then this message will be the default for all policies.
- PolicyDefinition stringReference Id 
- 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_idis specified then this message will be the default for all policies.
- PolicyDefinition stringReference Id 
- 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_idis specified then this message will be the default for all policies.
- policyDefinition StringReference Id 
- 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_idis specified then this message will be the default for all policies.
- policyDefinition stringReference Id 
- 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_idis specified then this message will be the default for all policies.
- policy_definition_ strreference_ id 
- 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_idis specified then this message will be the default for all policies.
- policyDefinition StringReference Id 
- When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to.
SubscriptionPolicyAssignmentOverride, SubscriptionPolicyAssignmentOverrideArgs        
- Value string
- Specifies the value to override the policy property. Possible values for policyEffectoverride listed policy effects.
- Selectors
List<SubscriptionPolicy Assignment Override Selector> 
- One or more override_selectorblock as defined below.
- Value string
- Specifies the value to override the policy property. Possible values for policyEffectoverride listed policy effects.
- Selectors
[]SubscriptionPolicy Assignment Override Selector 
- One or more override_selectorblock as defined below.
- value String
- Specifies the value to override the policy property. Possible values for policyEffectoverride listed policy effects.
- selectors
List<SubscriptionPolicy Assignment Override Selector> 
- One or more override_selectorblock as defined below.
- value string
- Specifies the value to override the policy property. Possible values for policyEffectoverride listed policy effects.
- selectors
SubscriptionPolicy Assignment Override Selector[] 
- One or more override_selectorblock as defined below.
- value str
- Specifies the value to override the policy property. Possible values for policyEffectoverride listed policy effects.
- selectors
Sequence[SubscriptionPolicy Assignment Override Selector] 
- One or more override_selectorblock as defined below.
- value String
- Specifies the value to override the policy property. Possible values for policyEffectoverride listed policy effects.
- selectors List<Property Map>
- One or more override_selectorblock as defined below.
SubscriptionPolicyAssignmentOverrideSelector, SubscriptionPolicyAssignmentOverrideSelectorArgs          
SubscriptionPolicyAssignmentResourceSelector, SubscriptionPolicyAssignmentResourceSelectorArgs          
- Selectors
List<SubscriptionPolicy Assignment Resource Selector Selector> 
- One or more resource_selectorblock as defined below.
- Name string
- Specifies a name for the resource selector.
- Selectors
[]SubscriptionPolicy Assignment Resource Selector Selector 
- One or more resource_selectorblock as defined below.
- Name string
- Specifies a name for the resource selector.
- selectors
List<SubscriptionPolicy Assignment Resource Selector Selector> 
- One or more resource_selectorblock as defined below.
- name String
- Specifies a name for the resource selector.
- selectors
SubscriptionPolicy Assignment Resource Selector Selector[] 
- One or more resource_selectorblock as defined below.
- name string
- Specifies a name for the resource selector.
- selectors
Sequence[SubscriptionPolicy Assignment Resource Selector Selector] 
- One or more resource_selectorblock as defined below.
- name str
- Specifies a name for the resource selector.
- selectors List<Property Map>
- One or more resource_selectorblock as defined below.
- name String
- Specifies a name for the resource selector.
SubscriptionPolicyAssignmentResourceSelectorSelector, SubscriptionPolicyAssignmentResourceSelectorSelectorArgs            
Import
Subscription Policy Assignments can be imported using the resource id, e.g.
$ pulumi import azure:core/subscriptionPolicyAssignment:SubscriptionPolicyAssignment example /subscriptions/00000000-0000-0000-000000000000/providers/Microsoft.Authorization/policyAssignments/assignment1
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 azurermTerraform Provider.