zpa.PolicyAccessIsolationRuleV2
Explore with Pulumi AI
The zpa_policy_isolation_rule_v2 resource creates and manages policy access isolation rule in the Zscaler Private Access cloud using a new v2 API endpoint.
⚠️ NOTE: This resource is recommended if your configuration requires the association of more than 1000 resource criteria per rule.
⚠️ WARNING:: The attribute rule_order is now deprecated in favor of the new resource policy_access_rule_reorder
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as zpa from "@bdzscaler/pulumi-zpa";
import * as zpa from "@pulumi/zpa";
const thisIsolationProfile = zpa.getIsolationProfile({
    name: "zpa_isolation_profile",
});
const thisIdPController = zpa.getIdPController({
    name: "Idp_Name",
});
const emailUserSso = zpa.getSAMLAttribute({
    name: "Email_Users",
    idpName: "Idp_Name",
});
const groupUser = zpa.getSAMLAttribute({
    name: "GroupName_Users",
    idpName: "Idp_Name",
});
const a000 = zpa.getSCIMGroups({
    name: "A000",
    idpName: "Idp_Name",
});
const b000 = zpa.getSCIMGroups({
    name: "B000",
    idpName: "Idp_Name",
});
// Create Policy Access Isolation Rule V2
const thisPolicyAccessIsolationRuleV2 = new zpa.PolicyAccessIsolationRuleV2("thisPolicyAccessIsolationRuleV2", {
    description: "Example",
    action: "ISOLATE",
    zpnIsolationProfileId: thisIsolationProfile.then(thisIsolationProfile => thisIsolationProfile.id),
    conditions: [
        {
            operator: "OR",
            operands: [{
                objectType: "CLIENT_TYPE",
                values: ["zpn_client_type_exporter"],
            }],
        },
        {
            operator: "OR",
            operands: [
                {
                    objectType: "SAML",
                    entryValues: [
                        {
                            rhs: "user1@acme.com",
                            lhs: emailUserSso.then(emailUserSso => emailUserSso.id),
                        },
                        {
                            rhs: "A000",
                            lhs: groupUser.then(groupUser => groupUser.id),
                        },
                    ],
                },
                {
                    objectType: "SCIM_GROUP",
                    entryValues: [
                        {
                            rhs: a000.then(a000 => a000.id),
                            lhs: thisIdPController.then(thisIdPController => thisIdPController.id),
                        },
                        {
                            rhs: b000.then(b000 => b000.id),
                            lhs: thisIdPController.then(thisIdPController => thisIdPController.id),
                        },
                    ],
                },
            ],
        },
    ],
});
import pulumi
import pulumi_zpa as zpa
import zscaler_pulumi_zpa as zpa
this_isolation_profile = zpa.get_isolation_profile(name="zpa_isolation_profile")
this_id_p_controller = zpa.get_id_p_controller(name="Idp_Name")
email_user_sso = zpa.get_saml_attribute(name="Email_Users",
    idp_name="Idp_Name")
group_user = zpa.get_saml_attribute(name="GroupName_Users",
    idp_name="Idp_Name")
a000 = zpa.get_scim_groups(name="A000",
    idp_name="Idp_Name")
b000 = zpa.get_scim_groups(name="B000",
    idp_name="Idp_Name")
# Create Policy Access Isolation Rule V2
this_policy_access_isolation_rule_v2 = zpa.PolicyAccessIsolationRuleV2("thisPolicyAccessIsolationRuleV2",
    description="Example",
    action="ISOLATE",
    zpn_isolation_profile_id=this_isolation_profile.id,
    conditions=[
        zpa.PolicyAccessIsolationRuleV2ConditionArgs(
            operator="OR",
            operands=[zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs(
                object_type="CLIENT_TYPE",
                values=["zpn_client_type_exporter"],
            )],
        ),
        zpa.PolicyAccessIsolationRuleV2ConditionArgs(
            operator="OR",
            operands=[
                zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs(
                    object_type="SAML",
                    entry_values=[
                        zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs(
                            rhs="user1@acme.com",
                            lhs=email_user_sso.id,
                        ),
                        zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs(
                            rhs="A000",
                            lhs=group_user.id,
                        ),
                    ],
                ),
                zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs(
                    object_type="SCIM_GROUP",
                    entry_values=[
                        zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs(
                            rhs=a000.id,
                            lhs=this_id_p_controller.id,
                        ),
                        zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs(
                            rhs=b000.id,
                            lhs=this_id_p_controller.id,
                        ),
                    ],
                ),
            ],
        ),
    ])
package main
import (
	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
	"github.com/zscaler/pulumi-zpa/sdk/go/zpa"
)
func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		thisIsolationProfile, err := zpa.GetIsolationProfile(ctx, &zpa.GetIsolationProfileArgs{
			Name: pulumi.StringRef("zpa_isolation_profile"),
		}, nil)
		if err != nil {
			return err
		}
		thisIdPController, err := zpa.GetIdPController(ctx, &zpa.GetIdPControllerArgs{
			Name: pulumi.StringRef("Idp_Name"),
		}, nil)
		if err != nil {
			return err
		}
		emailUserSso, err := zpa.GetSAMLAttribute(ctx, &zpa.GetSAMLAttributeArgs{
			Name:    pulumi.StringRef("Email_Users"),
			IdpName: pulumi.StringRef("Idp_Name"),
		}, nil)
		if err != nil {
			return err
		}
		groupUser, err := zpa.GetSAMLAttribute(ctx, &zpa.GetSAMLAttributeArgs{
			Name:    pulumi.StringRef("GroupName_Users"),
			IdpName: pulumi.StringRef("Idp_Name"),
		}, nil)
		if err != nil {
			return err
		}
		a000, err := zpa.GetSCIMGroups(ctx, &zpa.GetSCIMGroupsArgs{
			Name:    pulumi.StringRef("A000"),
			IdpName: pulumi.StringRef("Idp_Name"),
		}, nil)
		if err != nil {
			return err
		}
		b000, err := zpa.GetSCIMGroups(ctx, &zpa.GetSCIMGroupsArgs{
			Name:    pulumi.StringRef("B000"),
			IdpName: pulumi.StringRef("Idp_Name"),
		}, nil)
		if err != nil {
			return err
		}
		// Create Policy Access Isolation Rule V2
		_, err = zpa.NewPolicyAccessIsolationRuleV2(ctx, "thisPolicyAccessIsolationRuleV2", &zpa.PolicyAccessIsolationRuleV2Args{
			Description:           pulumi.String("Example"),
			Action:                pulumi.String("ISOLATE"),
			ZpnIsolationProfileId: pulumi.String(thisIsolationProfile.Id),
			Conditions: zpa.PolicyAccessIsolationRuleV2ConditionArray{
				&zpa.PolicyAccessIsolationRuleV2ConditionArgs{
					Operator: pulumi.String("OR"),
					Operands: zpa.PolicyAccessIsolationRuleV2ConditionOperandArray{
						&zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs{
							ObjectType: pulumi.String("CLIENT_TYPE"),
							Values: pulumi.StringArray{
								pulumi.String("zpn_client_type_exporter"),
							},
						},
					},
				},
				&zpa.PolicyAccessIsolationRuleV2ConditionArgs{
					Operator: pulumi.String("OR"),
					Operands: zpa.PolicyAccessIsolationRuleV2ConditionOperandArray{
						&zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs{
							ObjectType: pulumi.String("SAML"),
							EntryValues: zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArray{
								&zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs{
									Rhs: pulumi.String("user1@acme.com"),
									Lhs: pulumi.String(emailUserSso.Id),
								},
								&zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs{
									Rhs: pulumi.String("A000"),
									Lhs: pulumi.String(groupUser.Id),
								},
							},
						},
						&zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs{
							ObjectType: pulumi.String("SCIM_GROUP"),
							EntryValues: zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArray{
								&zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs{
									Rhs: pulumi.String(a000.Id),
									Lhs: pulumi.String(thisIdPController.Id),
								},
								&zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs{
									Rhs: pulumi.String(b000.Id),
									Lhs: pulumi.String(thisIdPController.Id),
								},
							},
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Zpa = Pulumi.Zpa;
using Zpa = Zscaler.Zpa;
return await Deployment.RunAsync(() => 
{
    var thisIsolationProfile = Zpa.GetIsolationProfile.Invoke(new()
    {
        Name = "zpa_isolation_profile",
    });
    var thisIdPController = Zpa.GetIdPController.Invoke(new()
    {
        Name = "Idp_Name",
    });
    var emailUserSso = Zpa.GetSAMLAttribute.Invoke(new()
    {
        Name = "Email_Users",
        IdpName = "Idp_Name",
    });
    var groupUser = Zpa.GetSAMLAttribute.Invoke(new()
    {
        Name = "GroupName_Users",
        IdpName = "Idp_Name",
    });
    var a000 = Zpa.GetSCIMGroups.Invoke(new()
    {
        Name = "A000",
        IdpName = "Idp_Name",
    });
    var b000 = Zpa.GetSCIMGroups.Invoke(new()
    {
        Name = "B000",
        IdpName = "Idp_Name",
    });
    // Create Policy Access Isolation Rule V2
    var thisPolicyAccessIsolationRuleV2 = new Zpa.PolicyAccessIsolationRuleV2("thisPolicyAccessIsolationRuleV2", new()
    {
        Description = "Example",
        Action = "ISOLATE",
        ZpnIsolationProfileId = thisIsolationProfile.Apply(getIsolationProfileResult => getIsolationProfileResult.Id),
        Conditions = new[]
        {
            new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionArgs
            {
                Operator = "OR",
                Operands = new[]
                {
                    new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandArgs
                    {
                        ObjectType = "CLIENT_TYPE",
                        Values = new[]
                        {
                            "zpn_client_type_exporter",
                        },
                    },
                },
            },
            new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionArgs
            {
                Operator = "OR",
                Operands = new[]
                {
                    new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandArgs
                    {
                        ObjectType = "SAML",
                        EntryValues = new[]
                        {
                            new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs
                            {
                                Rhs = "user1@acme.com",
                                Lhs = emailUserSso.Apply(getSAMLAttributeResult => getSAMLAttributeResult.Id),
                            },
                            new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs
                            {
                                Rhs = "A000",
                                Lhs = groupUser.Apply(getSAMLAttributeResult => getSAMLAttributeResult.Id),
                            },
                        },
                    },
                    new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandArgs
                    {
                        ObjectType = "SCIM_GROUP",
                        EntryValues = new[]
                        {
                            new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs
                            {
                                Rhs = a000.Apply(getSCIMGroupsResult => getSCIMGroupsResult.Id),
                                Lhs = thisIdPController.Apply(getIdPControllerResult => getIdPControllerResult.Id),
                            },
                            new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs
                            {
                                Rhs = b000.Apply(getSCIMGroupsResult => getSCIMGroupsResult.Id),
                                Lhs = thisIdPController.Apply(getIdPControllerResult => getIdPControllerResult.Id),
                            },
                        },
                    },
                },
            },
        },
    });
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.zpa.ZpaFunctions;
import com.pulumi.zpa.inputs.GetIsolationProfileArgs;
import com.pulumi.zpa.inputs.GetIdPControllerArgs;
import com.pulumi.zpa.inputs.GetSAMLAttributeArgs;
import com.pulumi.zpa.inputs.GetSCIMGroupsArgs;
import com.pulumi.zpa.PolicyAccessIsolationRuleV2;
import com.pulumi.zpa.PolicyAccessIsolationRuleV2Args;
import com.pulumi.zpa.inputs.PolicyAccessIsolationRuleV2ConditionArgs;
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 thisIsolationProfile = ZpaFunctions.getIsolationProfile(GetIsolationProfileArgs.builder()
            .name("zpa_isolation_profile")
            .build());
        final var thisIdPController = ZpaFunctions.getIdPController(GetIdPControllerArgs.builder()
            .name("Idp_Name")
            .build());
        final var emailUserSso = ZpaFunctions.getSAMLAttribute(GetSAMLAttributeArgs.builder()
            .name("Email_Users")
            .idpName("Idp_Name")
            .build());
        final var groupUser = ZpaFunctions.getSAMLAttribute(GetSAMLAttributeArgs.builder()
            .name("GroupName_Users")
            .idpName("Idp_Name")
            .build());
        final var a000 = ZpaFunctions.getSCIMGroups(GetSCIMGroupsArgs.builder()
            .name("A000")
            .idpName("Idp_Name")
            .build());
        final var b000 = ZpaFunctions.getSCIMGroups(GetSCIMGroupsArgs.builder()
            .name("B000")
            .idpName("Idp_Name")
            .build());
        // Create Policy Access Isolation Rule V2
        var thisPolicyAccessIsolationRuleV2 = new PolicyAccessIsolationRuleV2("thisPolicyAccessIsolationRuleV2", PolicyAccessIsolationRuleV2Args.builder()
            .description("Example")
            .action("ISOLATE")
            .zpnIsolationProfileId(thisIsolationProfile.applyValue(getIsolationProfileResult -> getIsolationProfileResult.id()))
            .conditions(            
                PolicyAccessIsolationRuleV2ConditionArgs.builder()
                    .operator("OR")
                    .operands(PolicyAccessIsolationRuleV2ConditionOperandArgs.builder()
                        .objectType("CLIENT_TYPE")
                        .values("zpn_client_type_exporter")
                        .build())
                    .build(),
                PolicyAccessIsolationRuleV2ConditionArgs.builder()
                    .operator("OR")
                    .operands(                    
                        PolicyAccessIsolationRuleV2ConditionOperandArgs.builder()
                            .objectType("SAML")
                            .entryValues(                            
                                PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs.builder()
                                    .rhs("user1@acme.com")
                                    .lhs(emailUserSso.applyValue(getSAMLAttributeResult -> getSAMLAttributeResult.id()))
                                    .build(),
                                PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs.builder()
                                    .rhs("A000")
                                    .lhs(groupUser.applyValue(getSAMLAttributeResult -> getSAMLAttributeResult.id()))
                                    .build())
                            .build(),
                        PolicyAccessIsolationRuleV2ConditionOperandArgs.builder()
                            .objectType("SCIM_GROUP")
                            .entryValues(                            
                                PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs.builder()
                                    .rhs(a000.applyValue(getSCIMGroupsResult -> getSCIMGroupsResult.id()))
                                    .lhs(thisIdPController.applyValue(getIdPControllerResult -> getIdPControllerResult.id()))
                                    .build(),
                                PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs.builder()
                                    .rhs(b000.applyValue(getSCIMGroupsResult -> getSCIMGroupsResult.id()))
                                    .lhs(thisIdPController.applyValue(getIdPControllerResult -> getIdPControllerResult.id()))
                                    .build())
                            .build())
                    .build())
            .build());
    }
}
resources:
  # Create Policy Access Isolation Rule V2
  thisPolicyAccessIsolationRuleV2:
    type: zpa:PolicyAccessIsolationRuleV2
    properties:
      description: Example
      action: ISOLATE
      zpnIsolationProfileId: ${thisIsolationProfile.id}
      conditions:
        - operator: OR
          operands:
            - objectType: CLIENT_TYPE
              values:
                - zpn_client_type_exporter
        - operator: OR
          operands:
            - objectType: SAML
              entryValues:
                - rhs: user1@acme.com
                  lhs: ${emailUserSso.id}
                - rhs: A000
                  lhs: ${groupUser.id}
            - objectType: SCIM_GROUP
              entryValues:
                - rhs: ${a000.id}
                  lhs: ${thisIdPController.id}
                - rhs: ${b000.id}
                  lhs: ${thisIdPController.id}
variables:
  thisIsolationProfile:
    fn::invoke:
      Function: zpa:getIsolationProfile
      Arguments:
        name: zpa_isolation_profile
  thisIdPController:
    fn::invoke:
      Function: zpa:getIdPController
      Arguments:
        name: Idp_Name
  emailUserSso:
    fn::invoke:
      Function: zpa:getSAMLAttribute
      Arguments:
        name: Email_Users
        idpName: Idp_Name
  groupUser:
    fn::invoke:
      Function: zpa:getSAMLAttribute
      Arguments:
        name: GroupName_Users
        idpName: Idp_Name
  a000:
    fn::invoke:
      Function: zpa:getSCIMGroups
      Arguments:
        name: A000
        idpName: Idp_Name
  b000:
    fn::invoke:
      Function: zpa:getSCIMGroups
      Arguments:
        name: B000
        idpName: Idp_Name
LHS and RHS Values
| Object Type | LHS | RHS | VALUES | 
|---|---|---|---|
| APP | application_segment_id | ||
| APP_GROUP | segment_group_id | ||
| CLIENT_TYPE | zpn_client_type_zappl,zpn_client_type_exporter,zpn_client_type_browser_isolation,zpn_client_type_ip_anchoring,zpn_client_type_edge_connector,zpn_client_type_branch_connector,zpn_client_type_zapp_partner,zpn_client_type_zapp | ||
| EDGE_CONNECTOR_GROUP | <edge_connector_id> | ||
| MACHINE_GRP | machine_group_id | ||
| SAML | saml_attribute_id | attribute_value_to_match | |
| SCIM | scim_attribute_id | attribute_value_to_match | |
| SCIM_GROUP | scim_group_attribute_id | attribute_value_to_match | |
| PLATFORM | mac,ios,windows,android,linux | "true"/"false" | |
| POSTURE | posture_udid | "true"/"false" | 
Create PolicyAccessIsolationRuleV2 Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new PolicyAccessIsolationRuleV2(name: string, args?: PolicyAccessIsolationRuleV2Args, opts?: CustomResourceOptions);@overload
def PolicyAccessIsolationRuleV2(resource_name: str,
                                args: Optional[PolicyAccessIsolationRuleV2Args] = None,
                                opts: Optional[ResourceOptions] = None)
@overload
def PolicyAccessIsolationRuleV2(resource_name: str,
                                opts: Optional[ResourceOptions] = None,
                                action: Optional[str] = None,
                                conditions: Optional[Sequence[PolicyAccessIsolationRuleV2ConditionArgs]] = None,
                                description: Optional[str] = None,
                                microtenant_id: Optional[str] = None,
                                name: Optional[str] = None,
                                zpn_isolation_profile_id: Optional[str] = None)func NewPolicyAccessIsolationRuleV2(ctx *Context, name string, args *PolicyAccessIsolationRuleV2Args, opts ...ResourceOption) (*PolicyAccessIsolationRuleV2, error)public PolicyAccessIsolationRuleV2(string name, PolicyAccessIsolationRuleV2Args? args = null, CustomResourceOptions? opts = null)
public PolicyAccessIsolationRuleV2(String name, PolicyAccessIsolationRuleV2Args args)
public PolicyAccessIsolationRuleV2(String name, PolicyAccessIsolationRuleV2Args args, CustomResourceOptions options)
type: zpa:PolicyAccessIsolationRuleV2
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args PolicyAccessIsolationRuleV2Args
- 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 PolicyAccessIsolationRuleV2Args
- 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 PolicyAccessIsolationRuleV2Args
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args PolicyAccessIsolationRuleV2Args
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args PolicyAccessIsolationRuleV2Args
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var policyAccessIsolationRuleV2Resource = new Zpa.PolicyAccessIsolationRuleV2("policyAccessIsolationRuleV2Resource", new()
{
    Action = "string",
    Conditions = new[]
    {
        new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionArgs
        {
            Id = "string",
            Operands = new[]
            {
                new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandArgs
                {
                    EntryValues = new[]
                    {
                        new Zpa.Inputs.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs
                        {
                            Lhs = "string",
                            Rhs = "string",
                        },
                    },
                    ObjectType = "string",
                    Values = new[]
                    {
                        "string",
                    },
                },
            },
            Operator = "string",
        },
    },
    Description = "string",
    MicrotenantId = "string",
    Name = "string",
    ZpnIsolationProfileId = "string",
});
example, err := zpa.NewPolicyAccessIsolationRuleV2(ctx, "policyAccessIsolationRuleV2Resource", &zpa.PolicyAccessIsolationRuleV2Args{
	Action: pulumi.String("string"),
	Conditions: zpa.PolicyAccessIsolationRuleV2ConditionArray{
		&zpa.PolicyAccessIsolationRuleV2ConditionArgs{
			Id: pulumi.String("string"),
			Operands: zpa.PolicyAccessIsolationRuleV2ConditionOperandArray{
				&zpa.PolicyAccessIsolationRuleV2ConditionOperandArgs{
					EntryValues: zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArray{
						&zpa.PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs{
							Lhs: pulumi.String("string"),
							Rhs: pulumi.String("string"),
						},
					},
					ObjectType: pulumi.String("string"),
					Values: pulumi.StringArray{
						pulumi.String("string"),
					},
				},
			},
			Operator: pulumi.String("string"),
		},
	},
	Description:           pulumi.String("string"),
	MicrotenantId:         pulumi.String("string"),
	Name:                  pulumi.String("string"),
	ZpnIsolationProfileId: pulumi.String("string"),
})
var policyAccessIsolationRuleV2Resource = new PolicyAccessIsolationRuleV2("policyAccessIsolationRuleV2Resource", PolicyAccessIsolationRuleV2Args.builder()
    .action("string")
    .conditions(PolicyAccessIsolationRuleV2ConditionArgs.builder()
        .id("string")
        .operands(PolicyAccessIsolationRuleV2ConditionOperandArgs.builder()
            .entryValues(PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs.builder()
                .lhs("string")
                .rhs("string")
                .build())
            .objectType("string")
            .values("string")
            .build())
        .operator("string")
        .build())
    .description("string")
    .microtenantId("string")
    .name("string")
    .zpnIsolationProfileId("string")
    .build());
policy_access_isolation_rule_v2_resource = zpa.PolicyAccessIsolationRuleV2("policyAccessIsolationRuleV2Resource",
    action="string",
    conditions=[{
        "id": "string",
        "operands": [{
            "entry_values": [{
                "lhs": "string",
                "rhs": "string",
            }],
            "object_type": "string",
            "values": ["string"],
        }],
        "operator": "string",
    }],
    description="string",
    microtenant_id="string",
    name="string",
    zpn_isolation_profile_id="string")
const policyAccessIsolationRuleV2Resource = new zpa.PolicyAccessIsolationRuleV2("policyAccessIsolationRuleV2Resource", {
    action: "string",
    conditions: [{
        id: "string",
        operands: [{
            entryValues: [{
                lhs: "string",
                rhs: "string",
            }],
            objectType: "string",
            values: ["string"],
        }],
        operator: "string",
    }],
    description: "string",
    microtenantId: "string",
    name: "string",
    zpnIsolationProfileId: "string",
});
type: zpa:PolicyAccessIsolationRuleV2
properties:
    action: string
    conditions:
        - id: string
          operands:
            - entryValues:
                - lhs: string
                  rhs: string
              objectType: string
              values:
                - string
          operator: string
    description: string
    microtenantId: string
    name: string
    zpnIsolationProfileId: string
PolicyAccessIsolationRuleV2 Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The PolicyAccessIsolationRuleV2 resource accepts the following input properties:
- Action string
- This is for providing the rule action. Supported values: ISOLATEDefault.
- Conditions
List<Zscaler.Zpa. Inputs. Policy Access Isolation Rule V2Condition> 
- This is for proviidng the set of conditions for the policy.
- Description string
- This is the description of the access policy rule.
- MicrotenantId string
- Name string
- This is the name of the policy rule.
- ZpnIsolation stringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- Action string
- This is for providing the rule action. Supported values: ISOLATEDefault.
- Conditions
[]PolicyAccess Isolation Rule V2Condition Args 
- This is for proviidng the set of conditions for the policy.
- Description string
- This is the description of the access policy rule.
- MicrotenantId string
- Name string
- This is the name of the policy rule.
- ZpnIsolation stringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action String
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions
List<PolicyAccess Isolation Rule V2Condition> 
- This is for proviidng the set of conditions for the policy.
- description String
- This is the description of the access policy rule.
- microtenantId String
- name String
- This is the name of the policy rule.
- zpnIsolation StringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action string
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions
PolicyAccess Isolation Rule V2Condition[] 
- This is for proviidng the set of conditions for the policy.
- description string
- This is the description of the access policy rule.
- microtenantId string
- name string
- This is the name of the policy rule.
- zpnIsolation stringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action str
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions
Sequence[PolicyAccess Isolation Rule V2Condition Args] 
- This is for proviidng the set of conditions for the policy.
- description str
- This is the description of the access policy rule.
- microtenant_id str
- name str
- This is the name of the policy rule.
- zpn_isolation_ strprofile_ id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action String
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions List<Property Map>
- This is for proviidng the set of conditions for the policy.
- description String
- This is the description of the access policy rule.
- microtenantId String
- name String
- This is the name of the policy rule.
- zpnIsolation StringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
Outputs
All input properties are implicitly available as output properties. Additionally, the PolicyAccessIsolationRuleV2 resource produces the following output properties:
- Id string
- The provider-assigned unique ID for this managed resource.
- PolicySet stringId 
- Id string
- The provider-assigned unique ID for this managed resource.
- PolicySet stringId 
- id String
- The provider-assigned unique ID for this managed resource.
- policySet StringId 
- id string
- The provider-assigned unique ID for this managed resource.
- policySet stringId 
- id str
- The provider-assigned unique ID for this managed resource.
- policy_set_ strid 
- id String
- The provider-assigned unique ID for this managed resource.
- policySet StringId 
Look up Existing PolicyAccessIsolationRuleV2 Resource
Get an existing PolicyAccessIsolationRuleV2 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?: PolicyAccessIsolationRuleV2State, opts?: CustomResourceOptions): PolicyAccessIsolationRuleV2@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        action: Optional[str] = None,
        conditions: Optional[Sequence[PolicyAccessIsolationRuleV2ConditionArgs]] = None,
        description: Optional[str] = None,
        microtenant_id: Optional[str] = None,
        name: Optional[str] = None,
        policy_set_id: Optional[str] = None,
        zpn_isolation_profile_id: Optional[str] = None) -> PolicyAccessIsolationRuleV2func GetPolicyAccessIsolationRuleV2(ctx *Context, name string, id IDInput, state *PolicyAccessIsolationRuleV2State, opts ...ResourceOption) (*PolicyAccessIsolationRuleV2, error)public static PolicyAccessIsolationRuleV2 Get(string name, Input<string> id, PolicyAccessIsolationRuleV2State? state, CustomResourceOptions? opts = null)public static PolicyAccessIsolationRuleV2 get(String name, Output<String> id, PolicyAccessIsolationRuleV2State state, CustomResourceOptions options)resources:  _:    type: zpa:PolicyAccessIsolationRuleV2    get:      id: ${id}- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Action string
- This is for providing the rule action. Supported values: ISOLATEDefault.
- Conditions
List<Zscaler.Zpa. Inputs. Policy Access Isolation Rule V2Condition> 
- This is for proviidng the set of conditions for the policy.
- Description string
- This is the description of the access policy rule.
- MicrotenantId string
- Name string
- This is the name of the policy rule.
- PolicySet stringId 
- ZpnIsolation stringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- Action string
- This is for providing the rule action. Supported values: ISOLATEDefault.
- Conditions
[]PolicyAccess Isolation Rule V2Condition Args 
- This is for proviidng the set of conditions for the policy.
- Description string
- This is the description of the access policy rule.
- MicrotenantId string
- Name string
- This is the name of the policy rule.
- PolicySet stringId 
- ZpnIsolation stringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action String
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions
List<PolicyAccess Isolation Rule V2Condition> 
- This is for proviidng the set of conditions for the policy.
- description String
- This is the description of the access policy rule.
- microtenantId String
- name String
- This is the name of the policy rule.
- policySet StringId 
- zpnIsolation StringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action string
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions
PolicyAccess Isolation Rule V2Condition[] 
- This is for proviidng the set of conditions for the policy.
- description string
- This is the description of the access policy rule.
- microtenantId string
- name string
- This is the name of the policy rule.
- policySet stringId 
- zpnIsolation stringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action str
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions
Sequence[PolicyAccess Isolation Rule V2Condition Args] 
- This is for proviidng the set of conditions for the policy.
- description str
- This is the description of the access policy rule.
- microtenant_id str
- name str
- This is the name of the policy rule.
- policy_set_ strid 
- zpn_isolation_ strprofile_ id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
- action String
- This is for providing the rule action. Supported values: ISOLATEDefault.
- conditions List<Property Map>
- This is for proviidng the set of conditions for the policy.
- description String
- This is the description of the access policy rule.
- microtenantId String
- name String
- This is the name of the policy rule.
- policySet StringId 
- zpnIsolation StringProfile Id 
- Use zpaisolationprofile data source to retrieve the necessary Isolation profile ID zpn_isolation_profile_id
Supporting Types
PolicyAccessIsolationRuleV2Condition, PolicyAccessIsolationRuleV2ConditionArgs          
- Id string
- Operands
List<Zscaler.Zpa. Inputs. Policy Access Isolation Rule V2Condition Operand> 
- This signifies the various policy criteria.
- Operator string
- Id string
- Operands
[]PolicyAccess Isolation Rule V2Condition Operand 
- This signifies the various policy criteria.
- Operator string
- id String
- operands
List<PolicyAccess Isolation Rule V2Condition Operand> 
- This signifies the various policy criteria.
- operator String
- id string
- operands
PolicyAccess Isolation Rule V2Condition Operand[] 
- This signifies the various policy criteria.
- operator string
- id str
- operands
Sequence[PolicyAccess Isolation Rule V2Condition Operand] 
- This signifies the various policy criteria.
- operator str
- id String
- operands List<Property Map>
- This signifies the various policy criteria.
- operator String
PolicyAccessIsolationRuleV2ConditionOperand, PolicyAccessIsolationRuleV2ConditionOperandArgs            
- EntryValues List<Zscaler.Zpa. Inputs. Policy Access Isolation Rule V2Condition Operand Entry Value> 
- ObjectType string
- This is for specifying the policy critiera.
- Values List<string>
- This denotes a list of values for the given object type. The value depend upon the key. If rhs is defined this list will be ignored
- EntryValues []PolicyAccess Isolation Rule V2Condition Operand Entry Value 
- ObjectType string
- This is for specifying the policy critiera.
- Values []string
- This denotes a list of values for the given object type. The value depend upon the key. If rhs is defined this list will be ignored
- entryValues List<PolicyAccess Isolation Rule V2Condition Operand Entry Value> 
- objectType String
- This is for specifying the policy critiera.
- values List<String>
- This denotes a list of values for the given object type. The value depend upon the key. If rhs is defined this list will be ignored
- entryValues PolicyAccess Isolation Rule V2Condition Operand Entry Value[] 
- objectType string
- This is for specifying the policy critiera.
- values string[]
- This denotes a list of values for the given object type. The value depend upon the key. If rhs is defined this list will be ignored
- entry_values Sequence[PolicyAccess Isolation Rule V2Condition Operand Entry Value] 
- object_type str
- This is for specifying the policy critiera.
- values Sequence[str]
- This denotes a list of values for the given object type. The value depend upon the key. If rhs is defined this list will be ignored
- entryValues List<Property Map>
- objectType String
- This is for specifying the policy critiera.
- values List<String>
- This denotes a list of values for the given object type. The value depend upon the key. If rhs is defined this list will be ignored
PolicyAccessIsolationRuleV2ConditionOperandEntryValue, PolicyAccessIsolationRuleV2ConditionOperandEntryValueArgs                
Import
Zscaler offers a dedicated tool called Zscaler-Terraformer to allow the automated import of ZPA configurations into Terraform-compliant HashiCorp Configuration Language.
Visit
Policy access isolation rule can be imported by using <RULE ID> as the import ID.
For example:
$ pulumi import zpa:index/policyAccessIsolationRuleV2:PolicyAccessIsolationRuleV2 example <rule_id>
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- zpa zscaler/pulumi-zpa
- License
- MIT
- Notes
- This Pulumi package is based on the zpaTerraform Provider.
