ResourcePolicyExemptionArgs

data class ResourcePolicyExemptionArgs(val description: Output<String>? = null, val displayName: Output<String>? = null, val exemptionCategory: Output<String>? = null, val expiresOn: Output<String>? = null, val metadata: Output<String>? = null, val name: Output<String>? = null, val policyAssignmentId: Output<String>? = null, val policyDefinitionReferenceIds: Output<List<String>>? = null, val resourceId: Output<String>? = null) : ConvertibleToJava<ResourcePolicyExemptionArgs>

Manages a Resource Policy Exemption.

Example Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.policy.PolicyFunctions;
import com.pulumi.azure.policy.inputs.GetPolicySetDefinitionArgs;
import com.pulumi.azure.core.ResourcePolicyAssignment;
import com.pulumi.azure.core.ResourcePolicyAssignmentArgs;
import com.pulumi.azure.core.inputs.ResourcePolicyAssignmentIdentityArgs;
import com.pulumi.azure.core.ResourcePolicyExemption;
import com.pulumi.azure.core.ResourcePolicyExemptionArgs;
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 exampleResourceGroup = new ResourceGroup("exampleResourceGroup", ResourceGroupArgs.builder()
.location("westus")
.build());
var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
.resourceGroupName(exampleResourceGroup.name())
.location(exampleResourceGroup.location())
.addressSpaces("10.0.0.0/16")
.build());
final var examplePolicySetDefinition = PolicyFunctions.getPolicySetDefinition(GetPolicySetDefinitionArgs.builder()
.displayName("Audit machines with insecure password security settings")
.build());
var exampleResourcePolicyAssignment = new ResourcePolicyAssignment("exampleResourcePolicyAssignment", ResourcePolicyAssignmentArgs.builder()
.resourceId(exampleVirtualNetwork.id())
.policyDefinitionId(examplePolicySetDefinition.applyValue(getPolicySetDefinitionResult -> getPolicySetDefinitionResult.id()))
.location(exampleResourceGroup.location())
.identity(ResourcePolicyAssignmentIdentityArgs.builder()
.type("SystemAssigned")
.build())
.build());
var exampleResourcePolicyExemption = new ResourcePolicyExemption("exampleResourcePolicyExemption", ResourcePolicyExemptionArgs.builder()
.resourceId(exampleResourcePolicyAssignment.resourceId())
.policyAssignmentId(exampleResourcePolicyAssignment.id())
.exemptionCategory("Mitigated")
.build());
}
}

Import

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

$ pulumi import azure:core/resourcePolicyExemption:ResourcePolicyExemption exemption1 /subscriptions/00000000-0000-0000-000000000000/resourceGroups/resGroup1/providers/Microsoft.Authorization/policyExemptions/exemption1

Constructors

Link copied to clipboard
fun ResourcePolicyExemptionArgs(description: Output<String>? = null, displayName: Output<String>? = null, exemptionCategory: Output<String>? = null, expiresOn: Output<String>? = null, metadata: Output<String>? = null, name: Output<String>? = null, policyAssignmentId: Output<String>? = null, policyDefinitionReferenceIds: Output<List<String>>? = null, resourceId: Output<String>? = null)

Functions

Link copied to clipboard
open override fun toJava(): ResourcePolicyExemptionArgs

Properties

Link copied to clipboard
val description: Output<String>? = null

A description to use for this Policy Exemption.

Link copied to clipboard
val displayName: Output<String>? = null

A friendly display name to use for this Policy Exemption.

Link copied to clipboard
val exemptionCategory: Output<String>? = null

The category of this policy exemption. Possible values are Waiver and Mitigated.

Link copied to clipboard
val expiresOn: Output<String>? = null

The expiration date and time in UTC ISO 8601 format of this policy exemption.

Link copied to clipboard
val metadata: Output<String>? = null

The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption.

Link copied to clipboard
val name: Output<String>? = null

The name of the Policy Exemption. Changing this forces a new resource to be created.

Link copied to clipboard
val policyAssignmentId: Output<String>? = null

The ID of the Policy Assignment to be exempted at the specified Scope. Changing this forces a new resource to be created.

Link copied to clipboard

The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition.

Link copied to clipboard
val resourceId: Output<String>? = null

The Resource ID where the Policy Exemption should be applied. Changing this forces a new resource to be created.