azure-native.authorization.PolicySetDefinition

Explore with Pulumi AI

The policy set definition. API Version: 2020-09-01.

Example Usage

Create or update a policy set definition

using System.Collections.Generic;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var policySetDefinition = new AzureNative.Authorization.PolicySetDefinition("policySetDefinition", new()
    {
        Description = "Policies to enforce low cost storage SKUs",
        DisplayName = "Cost Management",
        Metadata = 
        {
            { "category", "Cost Management" },
        },
        Parameters = 
        {
            { "namePrefix", new AzureNative.Authorization.Inputs.ParameterDefinitionsValueArgs
            {
                DefaultValue = "myPrefix",
                Metadata = new AzureNative.Authorization.Inputs.ParameterDefinitionsValueMetadataArgs
                {
                    DisplayName = "Prefix to enforce on resource names",
                },
                Type = "String",
            } },
        },
        PolicyDefinitions = new[]
        {
            new AzureNative.Authorization.Inputs.PolicyDefinitionReferenceArgs
            {
                Parameters = 
                {
                    { "listOfAllowedSKUs", new AzureNative.Authorization.Inputs.ParameterValuesValueArgs
                    {
                        Value = new[]
                        {
                            "Standard_GRS",
                            "Standard_LRS",
                        },
                    } },
                },
                PolicyDefinitionId = "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
                PolicyDefinitionReferenceId = "Limit_Skus",
            },
            new AzureNative.Authorization.Inputs.PolicyDefinitionReferenceArgs
            {
                Parameters = 
                {
                    { "prefix", new AzureNative.Authorization.Inputs.ParameterValuesValueArgs
                    {
                        Value = "[parameters('namePrefix')]",
                    } },
                    { "suffix", new AzureNative.Authorization.Inputs.ParameterValuesValueArgs
                    {
                        Value = "-LC",
                    } },
                },
                PolicyDefinitionId = "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
                PolicyDefinitionReferenceId = "Resource_Naming",
            },
        },
        PolicySetDefinitionName = "CostManagement",
    });

});

Coming soon!

package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.authorization.PolicySetDefinition;
import com.pulumi.azurenative.authorization.PolicySetDefinitionArgs;
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) {
        var policySetDefinition = new PolicySetDefinition("policySetDefinition", PolicySetDefinitionArgs.builder()        
            .description("Policies to enforce low cost storage SKUs")
            .displayName("Cost Management")
            .metadata(Map.of("category", "Cost Management"))
            .parameters(Map.of("namePrefix", Map.ofEntries(
                Map.entry("defaultValue", "myPrefix"),
                Map.entry("metadata", Map.of("displayName", "Prefix to enforce on resource names")),
                Map.entry("type", "String")
            )))
            .policyDefinitions(            
                Map.ofEntries(
                    Map.entry("parameters", Map.of("listOfAllowedSKUs", Map.of("value",                     
                        "Standard_GRS",
                        "Standard_LRS"))),
                    Map.entry("policyDefinitionId", "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1"),
                    Map.entry("policyDefinitionReferenceId", "Limit_Skus")
                ),
                Map.ofEntries(
                    Map.entry("parameters", Map.ofEntries(
                        Map.entry("prefix", Map.of("value", "[parameters('namePrefix')]")),
                        Map.entry("suffix", Map.of("value", "-LC"))
                    )),
                    Map.entry("policyDefinitionId", "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming"),
                    Map.entry("policyDefinitionReferenceId", "Resource_Naming")
                ))
            .policySetDefinitionName("CostManagement")
            .build());

    }
}
import pulumi
import pulumi_azure_native as azure_native

policy_set_definition = azure_native.authorization.PolicySetDefinition("policySetDefinition",
    description="Policies to enforce low cost storage SKUs",
    display_name="Cost Management",
    metadata={
        "category": "Cost Management",
    },
    parameters={
        "namePrefix": azure_native.authorization.ParameterDefinitionsValueArgs(
            default_value="myPrefix",
            metadata=azure_native.authorization.ParameterDefinitionsValueMetadataArgs(
                display_name="Prefix to enforce on resource names",
            ),
            type="String",
        ),
    },
    policy_definitions=[
        {
            "parameters": {
                "listOfAllowedSKUs": azure_native.authorization.ParameterValuesValueArgs(
                    value=[
                        "Standard_GRS",
                        "Standard_LRS",
                    ],
                ),
            },
            "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
            "policyDefinitionReferenceId": "Limit_Skus",
        },
        {
            "parameters": {
                "prefix": azure_native.authorization.ParameterValuesValueArgs(
                    value="[parameters('namePrefix')]",
                ),
                "suffix": azure_native.authorization.ParameterValuesValueArgs(
                    value="-LC",
                ),
            },
            "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
            "policyDefinitionReferenceId": "Resource_Naming",
        },
    ],
    policy_set_definition_name="CostManagement")
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const policySetDefinition = new azure_native.authorization.PolicySetDefinition("policySetDefinition", {
    description: "Policies to enforce low cost storage SKUs",
    displayName: "Cost Management",
    metadata: {
        category: "Cost Management",
    },
    parameters: {
        namePrefix: {
            defaultValue: "myPrefix",
            metadata: {
                displayName: "Prefix to enforce on resource names",
            },
            type: "String",
        },
    },
    policyDefinitions: [
        {
            parameters: {
                listOfAllowedSKUs: {
                    value: [
                        "Standard_GRS",
                        "Standard_LRS",
                    ],
                },
            },
            policyDefinitionId: "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
            policyDefinitionReferenceId: "Limit_Skus",
        },
        {
            parameters: {
                prefix: {
                    value: "[parameters('namePrefix')]",
                },
                suffix: {
                    value: "-LC",
                },
            },
            policyDefinitionId: "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
            policyDefinitionReferenceId: "Resource_Naming",
        },
    ],
    policySetDefinitionName: "CostManagement",
});
resources:
  policySetDefinition:
    type: azure-native:authorization:PolicySetDefinition
    properties:
      description: Policies to enforce low cost storage SKUs
      displayName: Cost Management
      metadata:
        category: Cost Management
      parameters:
        namePrefix:
          defaultValue: myPrefix
          metadata:
            displayName: Prefix to enforce on resource names
          type: String
      policyDefinitions:
        - parameters:
            listOfAllowedSKUs:
              value:
                - Standard_GRS
                - Standard_LRS
          policyDefinitionId: /subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1
          policyDefinitionReferenceId: Limit_Skus
        - parameters:
            prefix:
              value: '[parameters(''namePrefix'')]'
            suffix:
              value: -LC
          policyDefinitionId: /subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming
          policyDefinitionReferenceId: Resource_Naming
      policySetDefinitionName: CostManagement

Create or update a policy set definition with groups

using System.Collections.Generic;
using Pulumi;
using AzureNative = Pulumi.AzureNative;

return await Deployment.RunAsync(() => 
{
    var policySetDefinition = new AzureNative.Authorization.PolicySetDefinition("policySetDefinition", new()
    {
        Description = "Policies to enforce low cost storage SKUs",
        DisplayName = "Cost Management",
        Metadata = 
        {
            { "category", "Cost Management" },
        },
        PolicyDefinitionGroups = new[]
        {
            new AzureNative.Authorization.Inputs.PolicyDefinitionGroupArgs
            {
                Description = "Policies designed to control spend within a subscription.",
                DisplayName = "Cost Management Policies",
                Name = "CostSaving",
            },
            new AzureNative.Authorization.Inputs.PolicyDefinitionGroupArgs
            {
                Description = "Policies that help enforce resource organization standards within a subscription.",
                DisplayName = "Organizational Policies",
                Name = "Organizational",
            },
        },
        PolicyDefinitions = new[]
        {
            new AzureNative.Authorization.Inputs.PolicyDefinitionReferenceArgs
            {
                GroupNames = new[]
                {
                    "CostSaving",
                },
                Parameters = 
                {
                    { "listOfAllowedSKUs", new AzureNative.Authorization.Inputs.ParameterValuesValueArgs
                    {
                        Value = new[]
                        {
                            "Standard_GRS",
                            "Standard_LRS",
                        },
                    } },
                },
                PolicyDefinitionId = "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
                PolicyDefinitionReferenceId = "Limit_Skus",
            },
            new AzureNative.Authorization.Inputs.PolicyDefinitionReferenceArgs
            {
                GroupNames = new[]
                {
                    "Organizational",
                },
                Parameters = 
                {
                    { "prefix", new AzureNative.Authorization.Inputs.ParameterValuesValueArgs
                    {
                        Value = "DeptA",
                    } },
                    { "suffix", new AzureNative.Authorization.Inputs.ParameterValuesValueArgs
                    {
                        Value = "-LC",
                    } },
                },
                PolicyDefinitionId = "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
                PolicyDefinitionReferenceId = "Resource_Naming",
            },
        },
        PolicySetDefinitionName = "CostManagement",
    });

});

Coming soon!

package generated_program;

import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.authorization.PolicySetDefinition;
import com.pulumi.azurenative.authorization.PolicySetDefinitionArgs;
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) {
        var policySetDefinition = new PolicySetDefinition("policySetDefinition", PolicySetDefinitionArgs.builder()        
            .description("Policies to enforce low cost storage SKUs")
            .displayName("Cost Management")
            .metadata(Map.of("category", "Cost Management"))
            .policyDefinitionGroups(            
                Map.ofEntries(
                    Map.entry("description", "Policies designed to control spend within a subscription."),
                    Map.entry("displayName", "Cost Management Policies"),
                    Map.entry("name", "CostSaving")
                ),
                Map.ofEntries(
                    Map.entry("description", "Policies that help enforce resource organization standards within a subscription."),
                    Map.entry("displayName", "Organizational Policies"),
                    Map.entry("name", "Organizational")
                ))
            .policyDefinitions(            
                Map.ofEntries(
                    Map.entry("groupNames", "CostSaving"),
                    Map.entry("parameters", Map.of("listOfAllowedSKUs", Map.of("value",                     
                        "Standard_GRS",
                        "Standard_LRS"))),
                    Map.entry("policyDefinitionId", "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1"),
                    Map.entry("policyDefinitionReferenceId", "Limit_Skus")
                ),
                Map.ofEntries(
                    Map.entry("groupNames", "Organizational"),
                    Map.entry("parameters", Map.ofEntries(
                        Map.entry("prefix", Map.of("value", "DeptA")),
                        Map.entry("suffix", Map.of("value", "-LC"))
                    )),
                    Map.entry("policyDefinitionId", "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming"),
                    Map.entry("policyDefinitionReferenceId", "Resource_Naming")
                ))
            .policySetDefinitionName("CostManagement")
            .build());

    }
}
import pulumi
import pulumi_azure_native as azure_native

policy_set_definition = azure_native.authorization.PolicySetDefinition("policySetDefinition",
    description="Policies to enforce low cost storage SKUs",
    display_name="Cost Management",
    metadata={
        "category": "Cost Management",
    },
    policy_definition_groups=[
        {
            "description": "Policies designed to control spend within a subscription.",
            "displayName": "Cost Management Policies",
            "name": "CostSaving",
        },
        {
            "description": "Policies that help enforce resource organization standards within a subscription.",
            "displayName": "Organizational Policies",
            "name": "Organizational",
        },
    ],
    policy_definitions=[
        {
            "groupNames": ["CostSaving"],
            "parameters": {
                "listOfAllowedSKUs": azure_native.authorization.ParameterValuesValueArgs(
                    value=[
                        "Standard_GRS",
                        "Standard_LRS",
                    ],
                ),
            },
            "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
            "policyDefinitionReferenceId": "Limit_Skus",
        },
        {
            "groupNames": ["Organizational"],
            "parameters": {
                "prefix": azure_native.authorization.ParameterValuesValueArgs(
                    value="DeptA",
                ),
                "suffix": azure_native.authorization.ParameterValuesValueArgs(
                    value="-LC",
                ),
            },
            "policyDefinitionId": "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
            "policyDefinitionReferenceId": "Resource_Naming",
        },
    ],
    policy_set_definition_name="CostManagement")
import * as pulumi from "@pulumi/pulumi";
import * as azure_native from "@pulumi/azure-native";

const policySetDefinition = new azure_native.authorization.PolicySetDefinition("policySetDefinition", {
    description: "Policies to enforce low cost storage SKUs",
    displayName: "Cost Management",
    metadata: {
        category: "Cost Management",
    },
    policyDefinitionGroups: [
        {
            description: "Policies designed to control spend within a subscription.",
            displayName: "Cost Management Policies",
            name: "CostSaving",
        },
        {
            description: "Policies that help enforce resource organization standards within a subscription.",
            displayName: "Organizational Policies",
            name: "Organizational",
        },
    ],
    policyDefinitions: [
        {
            groupNames: ["CostSaving"],
            parameters: {
                listOfAllowedSKUs: {
                    value: [
                        "Standard_GRS",
                        "Standard_LRS",
                    ],
                },
            },
            policyDefinitionId: "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1",
            policyDefinitionReferenceId: "Limit_Skus",
        },
        {
            groupNames: ["Organizational"],
            parameters: {
                prefix: {
                    value: "DeptA",
                },
                suffix: {
                    value: "-LC",
                },
            },
            policyDefinitionId: "/subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming",
            policyDefinitionReferenceId: "Resource_Naming",
        },
    ],
    policySetDefinitionName: "CostManagement",
});
resources:
  policySetDefinition:
    type: azure-native:authorization:PolicySetDefinition
    properties:
      description: Policies to enforce low cost storage SKUs
      displayName: Cost Management
      metadata:
        category: Cost Management
      policyDefinitionGroups:
        - description: Policies designed to control spend within a subscription.
          displayName: Cost Management Policies
          name: CostSaving
        - description: Policies that help enforce resource organization standards within a subscription.
          displayName: Organizational Policies
          name: Organizational
      policyDefinitions:
        - groupNames:
            - CostSaving
          parameters:
            listOfAllowedSKUs:
              value:
                - Standard_GRS
                - Standard_LRS
          policyDefinitionId: /subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/7433c107-6db4-4ad1-b57a-a76dce0154a1
          policyDefinitionReferenceId: Limit_Skus
        - groupNames:
            - Organizational
          parameters:
            prefix:
              value: DeptA
            suffix:
              value: -LC
          policyDefinitionId: /subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policyDefinitions/ResourceNaming
          policyDefinitionReferenceId: Resource_Naming
      policySetDefinitionName: CostManagement

Create PolicySetDefinition Resource

new PolicySetDefinition(name: string, args: PolicySetDefinitionArgs, opts?: CustomResourceOptions);
@overload
def PolicySetDefinition(resource_name: str,
                        opts: Optional[ResourceOptions] = None,
                        description: Optional[str] = None,
                        display_name: Optional[str] = None,
                        metadata: Optional[Any] = None,
                        parameters: Optional[Mapping[str, ParameterDefinitionsValueArgs]] = None,
                        policy_definition_groups: Optional[Sequence[PolicyDefinitionGroupArgs]] = None,
                        policy_definitions: Optional[Sequence[PolicyDefinitionReferenceArgs]] = None,
                        policy_set_definition_name: Optional[str] = None,
                        policy_type: Optional[Union[str, PolicyType]] = None)
@overload
def PolicySetDefinition(resource_name: str,
                        args: PolicySetDefinitionArgs,
                        opts: Optional[ResourceOptions] = None)
func NewPolicySetDefinition(ctx *Context, name string, args PolicySetDefinitionArgs, opts ...ResourceOption) (*PolicySetDefinition, error)
public PolicySetDefinition(string name, PolicySetDefinitionArgs args, CustomResourceOptions? opts = null)
public PolicySetDefinition(String name, PolicySetDefinitionArgs args)
public PolicySetDefinition(String name, PolicySetDefinitionArgs args, CustomResourceOptions options)
type: azure-native:authorization:PolicySetDefinition
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

name string
The unique name of the resource.
args PolicySetDefinitionArgs
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 PolicySetDefinitionArgs
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 PolicySetDefinitionArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name string
The unique name of the resource.
args PolicySetDefinitionArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name String
The unique name of the resource.
args PolicySetDefinitionArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

PolicySetDefinition 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 PolicySetDefinition resource accepts the following input properties:

PolicyDefinitions List<Pulumi.AzureNative.Authorization.Inputs.PolicyDefinitionReferenceArgs>

An array of policy definition references.

Description string

The policy set definition description.

DisplayName string

The display name of the policy set definition.

Metadata object

The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.

Parameters Dictionary<string, Pulumi.AzureNative.Authorization.Inputs.ParameterDefinitionsValueArgs>

The policy set definition parameters that can be used in policy definition references.

PolicyDefinitionGroups List<Pulumi.AzureNative.Authorization.Inputs.PolicyDefinitionGroupArgs>

The metadata describing groups of policy definition references within the policy set definition.

PolicySetDefinitionName string

The name of the policy set definition to create.

PolicyType string | Pulumi.AzureNative.Authorization.PolicyType

The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.

PolicyDefinitions []PolicyDefinitionReferenceArgs

An array of policy definition references.

Description string

The policy set definition description.

DisplayName string

The display name of the policy set definition.

Metadata interface{}

The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.

Parameters map[string]ParameterDefinitionsValueArgs

The policy set definition parameters that can be used in policy definition references.

PolicyDefinitionGroups []PolicyDefinitionGroupArgs

The metadata describing groups of policy definition references within the policy set definition.

PolicySetDefinitionName string

The name of the policy set definition to create.

PolicyType string | PolicyType

The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.

policyDefinitions List<PolicyDefinitionReferenceArgs>

An array of policy definition references.

description String

The policy set definition description.

displayName String

The display name of the policy set definition.

metadata Object

The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.

parameters Map<String,ParameterDefinitionsValueArgs>

The policy set definition parameters that can be used in policy definition references.

policyDefinitionGroups List<PolicyDefinitionGroupArgs>

The metadata describing groups of policy definition references within the policy set definition.

policySetDefinitionName String

The name of the policy set definition to create.

policyType String | PolicyType

The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.

policyDefinitions PolicyDefinitionReferenceArgs[]

An array of policy definition references.

description string

The policy set definition description.

displayName string

The display name of the policy set definition.

metadata any

The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.

parameters {[key: string]: ParameterDefinitionsValueArgs}

The policy set definition parameters that can be used in policy definition references.

policyDefinitionGroups PolicyDefinitionGroupArgs[]

The metadata describing groups of policy definition references within the policy set definition.

policySetDefinitionName string

The name of the policy set definition to create.

policyType string | PolicyType

The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.

policy_definitions Sequence[PolicyDefinitionReferenceArgs]

An array of policy definition references.

description str

The policy set definition description.

display_name str

The display name of the policy set definition.

metadata Any

The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.

parameters Mapping[str, ParameterDefinitionsValueArgs]

The policy set definition parameters that can be used in policy definition references.

policy_definition_groups Sequence[PolicyDefinitionGroupArgs]

The metadata describing groups of policy definition references within the policy set definition.

policy_set_definition_name str

The name of the policy set definition to create.

policy_type str | PolicyType

The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.

policyDefinitions List<Property Map>

An array of policy definition references.

description String

The policy set definition description.

displayName String

The display name of the policy set definition.

metadata Any

The policy set definition metadata. Metadata is an open ended object and is typically a collection of key value pairs.

parameters Map<Property Map>

The policy set definition parameters that can be used in policy definition references.

policyDefinitionGroups List<Property Map>

The metadata describing groups of policy definition references within the policy set definition.

policySetDefinitionName String

The name of the policy set definition to create.

policyType String | "NotSpecified" | "BuiltIn" | "Custom" | "Static"

The type of policy definition. Possible values are NotSpecified, BuiltIn, Custom, and Static.

Outputs

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

Id string

The provider-assigned unique ID for this managed resource.

Name string

The name of the policy set definition.

Type string

The type of the resource (Microsoft.Authorization/policySetDefinitions).

Id string

The provider-assigned unique ID for this managed resource.

Name string

The name of the policy set definition.

Type string

The type of the resource (Microsoft.Authorization/policySetDefinitions).

id String

The provider-assigned unique ID for this managed resource.

name String

The name of the policy set definition.

type String

The type of the resource (Microsoft.Authorization/policySetDefinitions).

id string

The provider-assigned unique ID for this managed resource.

name string

The name of the policy set definition.

type string

The type of the resource (Microsoft.Authorization/policySetDefinitions).

id str

The provider-assigned unique ID for this managed resource.

name str

The name of the policy set definition.

type str

The type of the resource (Microsoft.Authorization/policySetDefinitions).

id String

The provider-assigned unique ID for this managed resource.

name String

The name of the policy set definition.

type String

The type of the resource (Microsoft.Authorization/policySetDefinitions).

Supporting Types

ParameterDefinitionsValue

AllowedValues List<object>

The allowed values for the parameter.

DefaultValue object

The default value for the parameter if no value is provided.

Metadata Pulumi.AzureNative.Authorization.Inputs.ParameterDefinitionsValueMetadata

General metadata for the parameter.

Type string | Pulumi.AzureNative.Authorization.ParameterType

The data type of the parameter.

AllowedValues []interface{}

The allowed values for the parameter.

DefaultValue interface{}

The default value for the parameter if no value is provided.

Metadata ParameterDefinitionsValueMetadata

General metadata for the parameter.

Type string | ParameterType

The data type of the parameter.

allowedValues List<Object>

The allowed values for the parameter.

defaultValue Object

The default value for the parameter if no value is provided.

metadata ParameterDefinitionsValueMetadata

General metadata for the parameter.

type String | ParameterType

The data type of the parameter.

allowedValues any[]

The allowed values for the parameter.

defaultValue any

The default value for the parameter if no value is provided.

metadata ParameterDefinitionsValueMetadata

General metadata for the parameter.

type string | ParameterType

The data type of the parameter.

allowed_values Sequence[Any]

The allowed values for the parameter.

default_value Any

The default value for the parameter if no value is provided.

metadata ParameterDefinitionsValueMetadata

General metadata for the parameter.

type str | ParameterType

The data type of the parameter.

allowedValues List<Any>

The allowed values for the parameter.

defaultValue Any

The default value for the parameter if no value is provided.

metadata Property Map

General metadata for the parameter.

type String | "String" | "Array" | "Object" | "Boolean" | "Integer" | "Float" | "DateTime"

The data type of the parameter.

ParameterDefinitionsValueMetadata

AssignPermissions bool

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

Description string

The description of the parameter.

DisplayName string

The display name for the parameter.

StrongType string

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

AssignPermissions bool

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

Description string

The description of the parameter.

DisplayName string

The display name for the parameter.

StrongType string

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assignPermissions Boolean

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description String

The description of the parameter.

displayName String

The display name for the parameter.

strongType String

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assignPermissions boolean

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description string

The description of the parameter.

displayName string

The display name for the parameter.

strongType string

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assign_permissions bool

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description str

The description of the parameter.

display_name str

The display name for the parameter.

strong_type str

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assignPermissions Boolean

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description String

The description of the parameter.

displayName String

The display name for the parameter.

strongType String

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

ParameterDefinitionsValueResponse

AllowedValues List<object>

The allowed values for the parameter.

DefaultValue object

The default value for the parameter if no value is provided.

Metadata Pulumi.AzureNative.Authorization.Inputs.ParameterDefinitionsValueResponseMetadata

General metadata for the parameter.

Type string

The data type of the parameter.

AllowedValues []interface{}

The allowed values for the parameter.

DefaultValue interface{}

The default value for the parameter if no value is provided.

Metadata ParameterDefinitionsValueResponseMetadata

General metadata for the parameter.

Type string

The data type of the parameter.

allowedValues List<Object>

The allowed values for the parameter.

defaultValue Object

The default value for the parameter if no value is provided.

metadata ParameterDefinitionsValueResponseMetadata

General metadata for the parameter.

type String

The data type of the parameter.

allowedValues any[]

The allowed values for the parameter.

defaultValue any

The default value for the parameter if no value is provided.

metadata ParameterDefinitionsValueResponseMetadata

General metadata for the parameter.

type string

The data type of the parameter.

allowed_values Sequence[Any]

The allowed values for the parameter.

default_value Any

The default value for the parameter if no value is provided.

metadata ParameterDefinitionsValueResponseMetadata

General metadata for the parameter.

type str

The data type of the parameter.

allowedValues List<Any>

The allowed values for the parameter.

defaultValue Any

The default value for the parameter if no value is provided.

metadata Property Map

General metadata for the parameter.

type String

The data type of the parameter.

ParameterDefinitionsValueResponseMetadata

AssignPermissions bool

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

Description string

The description of the parameter.

DisplayName string

The display name for the parameter.

StrongType string

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

AssignPermissions bool

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

Description string

The description of the parameter.

DisplayName string

The display name for the parameter.

StrongType string

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assignPermissions Boolean

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description String

The description of the parameter.

displayName String

The display name for the parameter.

strongType String

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assignPermissions boolean

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description string

The description of the parameter.

displayName string

The display name for the parameter.

strongType string

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assign_permissions bool

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description str

The description of the parameter.

display_name str

The display name for the parameter.

strong_type str

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

assignPermissions Boolean

Set to true to have Azure portal create role assignments on the resource ID or resource scope value of this parameter during policy assignment. This property is useful in case you wish to assign permissions outside the assignment scope.

description String

The description of the parameter.

displayName String

The display name for the parameter.

strongType String

Used when assigning the policy definition through the portal. Provides a context aware list of values for the user to choose from.

ParameterType

String
String
Array
Array
Object
Object
Boolean
Boolean
Integer
Integer
Float
Float
DateTime
DateTime
ParameterTypeString
String
ParameterTypeArray
Array
ParameterTypeObject
Object
ParameterTypeBoolean
Boolean
ParameterTypeInteger
Integer
ParameterTypeFloat
Float
ParameterTypeDateTime
DateTime
String
String
Array
Array
Object
Object
Boolean
Boolean
Integer
Integer
Float
Float
DateTime
DateTime
String
String
Array
Array
Object
Object
Boolean
Boolean
Integer
Integer
Float
Float
DateTime
DateTime
STRING
String
ARRAY
Array
OBJECT
Object
BOOLEAN
Boolean
INTEGER
Integer
FLOAT
Float
DATE_TIME
DateTime
"String"
String
"Array"
Array
"Object"
Object
"Boolean"
Boolean
"Integer"
Integer
"Float"
Float
"DateTime"
DateTime

ParameterValuesValue

Value object

The value of the parameter.

Value interface{}

The value of the parameter.

value Object

The value of the parameter.

value any

The value of the parameter.

value Any

The value of the parameter.

value Any

The value of the parameter.

ParameterValuesValueResponse

Value object

The value of the parameter.

Value interface{}

The value of the parameter.

value Object

The value of the parameter.

value any

The value of the parameter.

value Any

The value of the parameter.

value Any

The value of the parameter.

PolicyDefinitionGroup

Name string

The name of the group.

AdditionalMetadataId string

A resource ID of a resource that contains additional metadata about the group.

Category string

The group's category.

Description string

The group's description.

DisplayName string

The group's display name.

Name string

The name of the group.

AdditionalMetadataId string

A resource ID of a resource that contains additional metadata about the group.

Category string

The group's category.

Description string

The group's description.

DisplayName string

The group's display name.

name String

The name of the group.

additionalMetadataId String

A resource ID of a resource that contains additional metadata about the group.

category String

The group's category.

description String

The group's description.

displayName String

The group's display name.

name string

The name of the group.

additionalMetadataId string

A resource ID of a resource that contains additional metadata about the group.

category string

The group's category.

description string

The group's description.

displayName string

The group's display name.

name str

The name of the group.

additional_metadata_id str

A resource ID of a resource that contains additional metadata about the group.

category str

The group's category.

description str

The group's description.

display_name str

The group's display name.

name String

The name of the group.

additionalMetadataId String

A resource ID of a resource that contains additional metadata about the group.

category String

The group's category.

description String

The group's description.

displayName String

The group's display name.

PolicyDefinitionGroupResponse

Name string

The name of the group.

AdditionalMetadataId string

A resource ID of a resource that contains additional metadata about the group.

Category string

The group's category.

Description string

The group's description.

DisplayName string

The group's display name.

Name string

The name of the group.

AdditionalMetadataId string

A resource ID of a resource that contains additional metadata about the group.

Category string

The group's category.

Description string

The group's description.

DisplayName string

The group's display name.

name String

The name of the group.

additionalMetadataId String

A resource ID of a resource that contains additional metadata about the group.

category String

The group's category.

description String

The group's description.

displayName String

The group's display name.

name string

The name of the group.

additionalMetadataId string

A resource ID of a resource that contains additional metadata about the group.

category string

The group's category.

description string

The group's description.

displayName string

The group's display name.

name str

The name of the group.

additional_metadata_id str

A resource ID of a resource that contains additional metadata about the group.

category str

The group's category.

description str

The group's description.

display_name str

The group's display name.

name String

The name of the group.

additionalMetadataId String

A resource ID of a resource that contains additional metadata about the group.

category String

The group's category.

description String

The group's description.

displayName String

The group's display name.

PolicyDefinitionReference

PolicyDefinitionId string

The ID of the policy definition or policy set definition.

GroupNames List<string>

The name of the groups that this policy definition reference belongs to.

Parameters Dictionary<string, Pulumi.AzureNative.Authorization.Inputs.ParameterValuesValue>

The parameter values for the referenced policy rule. The keys are the parameter names.

PolicyDefinitionReferenceId string

A unique id (within the policy set definition) for this policy definition reference.

PolicyDefinitionId string

The ID of the policy definition or policy set definition.

GroupNames []string

The name of the groups that this policy definition reference belongs to.

Parameters map[string]ParameterValuesValue

The parameter values for the referenced policy rule. The keys are the parameter names.

PolicyDefinitionReferenceId string

A unique id (within the policy set definition) for this policy definition reference.

policyDefinitionId String

The ID of the policy definition or policy set definition.

groupNames List<String>

The name of the groups that this policy definition reference belongs to.

parameters Map<String,ParameterValuesValue>

The parameter values for the referenced policy rule. The keys are the parameter names.

policyDefinitionReferenceId String

A unique id (within the policy set definition) for this policy definition reference.

policyDefinitionId string

The ID of the policy definition or policy set definition.

groupNames string[]

The name of the groups that this policy definition reference belongs to.

parameters {[key: string]: ParameterValuesValue}

The parameter values for the referenced policy rule. The keys are the parameter names.

policyDefinitionReferenceId string

A unique id (within the policy set definition) for this policy definition reference.

policy_definition_id str

The ID of the policy definition or policy set definition.

group_names Sequence[str]

The name of the groups that this policy definition reference belongs to.

parameters Mapping[str, ParameterValuesValue]

The parameter values for the referenced policy rule. The keys are the parameter names.

policy_definition_reference_id str

A unique id (within the policy set definition) for this policy definition reference.

policyDefinitionId String

The ID of the policy definition or policy set definition.

groupNames List<String>

The name of the groups that this policy definition reference belongs to.

parameters Map<Property Map>

The parameter values for the referenced policy rule. The keys are the parameter names.

policyDefinitionReferenceId String

A unique id (within the policy set definition) for this policy definition reference.

PolicyDefinitionReferenceResponse

PolicyDefinitionId string

The ID of the policy definition or policy set definition.

GroupNames List<string>

The name of the groups that this policy definition reference belongs to.

Parameters Dictionary<string, Pulumi.AzureNative.Authorization.Inputs.ParameterValuesValueResponse>

The parameter values for the referenced policy rule. The keys are the parameter names.

PolicyDefinitionReferenceId string

A unique id (within the policy set definition) for this policy definition reference.

PolicyDefinitionId string

The ID of the policy definition or policy set definition.

GroupNames []string

The name of the groups that this policy definition reference belongs to.

Parameters map[string]ParameterValuesValueResponse

The parameter values for the referenced policy rule. The keys are the parameter names.

PolicyDefinitionReferenceId string

A unique id (within the policy set definition) for this policy definition reference.

policyDefinitionId String

The ID of the policy definition or policy set definition.

groupNames List<String>

The name of the groups that this policy definition reference belongs to.

parameters Map<String,ParameterValuesValueResponse>

The parameter values for the referenced policy rule. The keys are the parameter names.

policyDefinitionReferenceId String

A unique id (within the policy set definition) for this policy definition reference.

policyDefinitionId string

The ID of the policy definition or policy set definition.

groupNames string[]

The name of the groups that this policy definition reference belongs to.

parameters {[key: string]: ParameterValuesValueResponse}

The parameter values for the referenced policy rule. The keys are the parameter names.

policyDefinitionReferenceId string

A unique id (within the policy set definition) for this policy definition reference.

policy_definition_id str

The ID of the policy definition or policy set definition.

group_names Sequence[str]

The name of the groups that this policy definition reference belongs to.

parameters Mapping[str, ParameterValuesValueResponse]

The parameter values for the referenced policy rule. The keys are the parameter names.

policy_definition_reference_id str

A unique id (within the policy set definition) for this policy definition reference.

policyDefinitionId String

The ID of the policy definition or policy set definition.

groupNames List<String>

The name of the groups that this policy definition reference belongs to.

parameters Map<Property Map>

The parameter values for the referenced policy rule. The keys are the parameter names.

policyDefinitionReferenceId String

A unique id (within the policy set definition) for this policy definition reference.

PolicyType

NotSpecified
NotSpecified
BuiltIn
BuiltIn
Custom
Custom
Static
Static
PolicyTypeNotSpecified
NotSpecified
PolicyTypeBuiltIn
BuiltIn
PolicyTypeCustom
Custom
PolicyTypeStatic
Static
NotSpecified
NotSpecified
BuiltIn
BuiltIn
Custom
Custom
Static
Static
NotSpecified
NotSpecified
BuiltIn
BuiltIn
Custom
Custom
Static
Static
NOT_SPECIFIED
NotSpecified
BUILT_IN
BuiltIn
CUSTOM
Custom
STATIC
Static
"NotSpecified"
NotSpecified
"BuiltIn"
BuiltIn
"Custom"
Custom
"Static"
Static

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:authorization:PolicySetDefinition CostManagement /subscriptions/ae640e6b-ba3e-4256-9d62-2993eecfa6f2/providers/Microsoft.Authorization/policySetDefinitions/CostManagement 

Package Details

Repository
Azure Native pulumi/pulumi-azure-native
License
Apache-2.0