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

We recommend using Azure Native.

Azure Classic v5.70.0 published on Wednesday, Mar 27, 2024 by Pulumi

azure.core.SubscriptionPolicyAssignment

Explore with Pulumi AI

azure logo

We recommend using Azure Native.

Azure Classic v5.70.0 published on Wednesday, Mar 27, 2024 by Pulumi

    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/v5/go/azure/core"
    	"github.com/pulumi/pulumi-azure/sdk/v5/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, nil, 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

    new SubscriptionPolicyAssignment(name: string, args: SubscriptionPolicyAssignmentArgs, opts?: CustomResourceOptions);
    @overload
    def SubscriptionPolicyAssignment(resource_name: 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)
    @overload
    def SubscriptionPolicyAssignment(resource_name: str,
                                     args: SubscriptionPolicyAssignmentArgs,
                                     opts: Optional[ResourceOptions] = 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.
    
    
    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.

    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

    The SubscriptionPolicyAssignment 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.
    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 SubscriptionPolicyAssignmentIdentity

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    NonComplianceMessages List<SubscriptionPolicyAssignmentNonComplianceMessage>
    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.
    Overrides List<SubscriptionPolicyAssignmentOverride>
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    Parameters string
    A JSON mapping of any Parameters for this Policy.
    ResourceSelectors List<SubscriptionPolicyAssignmentResourceSelector>
    One or more resource_selectors blocks as defined below to filter polices by resource properties.
    PolicyDefinitionId string
    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 SubscriptionPolicyAssignmentIdentityArgs

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    NonComplianceMessages []SubscriptionPolicyAssignmentNonComplianceMessageArgs
    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.
    Overrides []SubscriptionPolicyAssignmentOverrideArgs
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    Parameters string
    A JSON mapping of any Parameters for this Policy.
    ResourceSelectors []SubscriptionPolicyAssignmentResourceSelectorArgs
    One or more resource_selectors blocks as defined below to filter polices by resource properties.
    policyDefinitionId String
    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 SubscriptionPolicyAssignmentIdentity

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    nonComplianceMessages List<SubscriptionPolicyAssignmentNonComplianceMessage>
    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.
    overrides List<SubscriptionPolicyAssignmentOverride>
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    parameters String
    A JSON mapping of any Parameters for this Policy.
    resourceSelectors List<SubscriptionPolicyAssignmentResourceSelector>
    One or more resource_selectors blocks as defined below to filter polices by resource properties.
    policyDefinitionId string
    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 SubscriptionPolicyAssignmentIdentity

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    nonComplianceMessages SubscriptionPolicyAssignmentNonComplianceMessage[]
    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.
    overrides SubscriptionPolicyAssignmentOverride[]
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    parameters string
    A JSON mapping of any Parameters for this Policy.
    resourceSelectors SubscriptionPolicyAssignmentResourceSelector[]
    One or more resource_selectors blocks as defined below to filter polices by resource properties.
    policy_definition_id str
    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 SubscriptionPolicyAssignmentIdentityArgs

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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_messages Sequence[SubscriptionPolicyAssignmentNonComplianceMessageArgs]
    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.
    overrides Sequence[SubscriptionPolicyAssignmentOverrideArgs]
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    parameters str
    A JSON mapping of any Parameters for this Policy.
    resource_selectors Sequence[SubscriptionPolicyAssignmentResourceSelectorArgs]
    One or more resource_selectors blocks as defined below to filter polices by resource properties.
    policyDefinitionId String
    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 identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    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.
    overrides List<Property Map>
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    parameters String
    A JSON mapping of any Parameters for this Policy.
    resourceSelectors List<Property Map>
    One or more resource_selectors blocks 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) -> SubscriptionPolicyAssignment
    func 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)
    Resource lookup is not supported in YAML
    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? Defaults to true.
    Identity SubscriptionPolicyAssignmentIdentity

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    NonComplianceMessages List<SubscriptionPolicyAssignmentNonComplianceMessage>
    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.
    Overrides List<SubscriptionPolicyAssignmentOverride>
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    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.
    ResourceSelectors List<SubscriptionPolicyAssignmentResourceSelector>
    One or more resource_selectors blocks 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 SubscriptionPolicyAssignmentIdentityArgs

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    NonComplianceMessages []SubscriptionPolicyAssignmentNonComplianceMessageArgs
    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.
    Overrides []SubscriptionPolicyAssignmentOverrideArgs
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    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.
    ResourceSelectors []SubscriptionPolicyAssignmentResourceSelectorArgs
    One or more resource_selectors blocks 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 SubscriptionPolicyAssignmentIdentity

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    nonComplianceMessages List<SubscriptionPolicyAssignmentNonComplianceMessage>
    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.
    overrides List<SubscriptionPolicyAssignmentOverride>
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    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.
    resourceSelectors List<SubscriptionPolicyAssignmentResourceSelector>
    One or more resource_selectors blocks 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 SubscriptionPolicyAssignmentIdentity

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    nonComplianceMessages SubscriptionPolicyAssignmentNonComplianceMessage[]
    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.
    overrides SubscriptionPolicyAssignmentOverride[]
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    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.
    resourceSelectors SubscriptionPolicyAssignmentResourceSelector[]
    One or more resource_selectors blocks 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 SubscriptionPolicyAssignmentIdentityArgs

    An identity block as defined below.

    Note: The location field must also be specified when identity is 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_messages Sequence[SubscriptionPolicyAssignmentNonComplianceMessageArgs]
    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.
    overrides Sequence[SubscriptionPolicyAssignmentOverrideArgs]
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    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_selectors Sequence[SubscriptionPolicyAssignmentResourceSelectorArgs]
    One or more resource_selectors blocks 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 identity block as defined below.

    Note: The location field must also be specified when identity is 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.
    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.
    overrides List<Property Map>
    One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure
    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.
    resourceSelectors List<Property Map>
    One or more resource_selectors blocks 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 SystemAssigned or UserAssigned.
    IdentityIds List<string>

    A list of User Managed Identity IDs which should be assigned to the Policy Definition.

    NOTE: This is required when type is 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 SystemAssigned or UserAssigned.
    IdentityIds []string

    A list of User Managed Identity IDs which should be assigned to the Policy Definition.

    NOTE: This is required when type is 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 SystemAssigned or UserAssigned.
    identityIds List<String>

    A list of User Managed Identity IDs which should be assigned to the Policy Definition.

    NOTE: This is required when type is 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 SystemAssigned or UserAssigned.
    identityIds string[]

    A list of User Managed Identity IDs which should be assigned to the Policy Definition.

    NOTE: This is required when type is 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 SystemAssigned or UserAssigned.
    identity_ids Sequence[str]

    A list of User Managed Identity IDs which should be assigned to the Policy Definition.

    NOTE: This is required when type is 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 SystemAssigned or UserAssigned.
    identityIds List<String>

    A list of User Managed Identity IDs which should be assigned to the Policy Definition.

    NOTE: This is required when type is 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_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.

    SubscriptionPolicyAssignmentOverride, SubscriptionPolicyAssignmentOverrideArgs

    Value string
    Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects.
    Selectors List<SubscriptionPolicyAssignmentOverrideSelector>
    One or more override_selector block as defined below.
    Value string
    Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects.
    Selectors []SubscriptionPolicyAssignmentOverrideSelector
    One or more override_selector block as defined below.
    value String
    Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects.
    selectors List<SubscriptionPolicyAssignmentOverrideSelector>
    One or more override_selector block as defined below.
    value string
    Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects.
    selectors SubscriptionPolicyAssignmentOverrideSelector[]
    One or more override_selector block as defined below.
    value str
    Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects.
    selectors Sequence[SubscriptionPolicyAssignmentOverrideSelector]
    One or more override_selector block as defined below.
    value String
    Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects.
    selectors List<Property Map>
    One or more override_selector block as defined below.

    SubscriptionPolicyAssignmentOverrideSelector, SubscriptionPolicyAssignmentOverrideSelectorArgs

    Ins List<string>
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    Kind string
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    NotIns List<string>
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    Ins []string
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    Kind string
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    NotIns []string
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    ins List<String>
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    kind String
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    notIns List<String>
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    ins string[]
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    kind string
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    notIns string[]
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    ins Sequence[str]
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    kind str
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    not_ins Sequence[str]
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    ins List<String>
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    kind String
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    notIns List<String>
    Specify the list of policy reference id values to filter out. Cannot be used with in.

    SubscriptionPolicyAssignmentResourceSelector, SubscriptionPolicyAssignmentResourceSelectorArgs

    Selectors List<SubscriptionPolicyAssignmentResourceSelectorSelector>
    One or more resource_selector block as defined below.
    Name string
    Specifies a name for the resource selector.
    Selectors []SubscriptionPolicyAssignmentResourceSelectorSelector
    One or more resource_selector block as defined below.
    Name string
    Specifies a name for the resource selector.
    selectors List<SubscriptionPolicyAssignmentResourceSelectorSelector>
    One or more resource_selector block as defined below.
    name String
    Specifies a name for the resource selector.
    selectors SubscriptionPolicyAssignmentResourceSelectorSelector[]
    One or more resource_selector block as defined below.
    name string
    Specifies a name for the resource selector.
    selectors Sequence[SubscriptionPolicyAssignmentResourceSelectorSelector]
    One or more resource_selector block as defined below.
    name str
    Specifies a name for the resource selector.
    selectors List<Property Map>
    One or more resource_selector block as defined below.
    name String
    Specifies a name for the resource selector.

    SubscriptionPolicyAssignmentResourceSelectorSelector, SubscriptionPolicyAssignmentResourceSelectorSelectorArgs

    Kind string
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    Ins List<string>
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    NotIns List<string>
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    Kind string
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    Ins []string
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    NotIns []string
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    kind String
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    ins List<String>
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    notIns List<String>
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    kind string
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    ins string[]
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    notIns string[]
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    kind str
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    ins Sequence[str]
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    not_ins Sequence[str]
    Specify the list of policy reference id values to filter out. Cannot be used with in.
    kind String
    Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation.
    ins List<String>
    Specify the list of policy reference id values to filter in. Cannot be used with not_in.
    notIns List<String>
    Specify the list of policy reference id values to filter out. Cannot be used with in.

    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
    

    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.

    Azure Classic v5.70.0 published on Wednesday, Mar 27, 2024 by Pulumi