1. Packages
  2. Juniper Mist Provider
  3. API Docs
  4. org
  5. Vpn
Juniper Mist v0.3.1 published on Monday, Apr 14, 2025 by Pulumi

junipermist.org.Vpn

Explore with Pulumi AI

This resource manages the Org VPN.

Example Usage

Coming soon!
Coming soon!
Coming soon!
Coming soon!
Coming soon!
resources:
  terraformTest:
    type: junipermist:org:Setting
    name: terraform_test
    properties:
      orgId: ${terraformTestMistOrg.id}
      passwordPolicy:
        enabled: true
        min_length: 8
        requires_special_char: true
        requires_two_factor_auth: true
      mistNac:
        eu_only: true
      syntheticTest:
        disabled: false
        vlans:
          - vlanIds:
              - '8'
              - '999'
            disabled: true
      apiPolicy:
        no_reveal: false
Copy

Create Vpn Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Vpn(name: string, args: VpnArgs, opts?: CustomResourceOptions);
@overload
def Vpn(resource_name: str,
        args: VpnArgs,
        opts: Optional[ResourceOptions] = None)

@overload
def Vpn(resource_name: str,
        opts: Optional[ResourceOptions] = None,
        paths: Optional[Mapping[str, VpnPathsArgs]] = None,
        name: Optional[str] = None,
        org_id: Optional[str] = None,
        path_selection: Optional[VpnPathSelectionArgs] = None,
        type: Optional[str] = None)
func NewVpn(ctx *Context, name string, args VpnArgs, opts ...ResourceOption) (*Vpn, error)
public Vpn(string name, VpnArgs args, CustomResourceOptions? opts = null)
public Vpn(String name, VpnArgs args)
public Vpn(String name, VpnArgs args, CustomResourceOptions options)
type: junipermist:org:Vpn
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. VpnArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. VpnArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. VpnArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. VpnArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. VpnArgs
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 vpnResource = new JuniperMist.Org.Vpn("vpnResource", new()
{
    Paths = 
    {
        { "string", new JuniperMist.Org.Inputs.VpnPathsArgs
        {
            BfdProfile = "string",
            BfdUseTunnelMode = false,
            Ip = "string",
            PeerPaths = 
            {
                { "string", new JuniperMist.Org.Inputs.VpnPathsPeerPathsArgs
                {
                    Preference = 0,
                } },
            },
            Pod = 0,
            TrafficShaping = new JuniperMist.Org.Inputs.VpnPathsTrafficShapingArgs
            {
                ClassPercentages = new[]
                {
                    0,
                },
                Enabled = false,
                MaxTxKbps = 0,
            },
        } },
    },
    Name = "string",
    OrgId = "string",
    PathSelection = new JuniperMist.Org.Inputs.VpnPathSelectionArgs
    {
        Strategy = "string",
    },
    Type = "string",
});
Copy
example, err := org.NewVpn(ctx, "vpnResource", &org.VpnArgs{
	Paths: org.VpnPathsMap{
		"string": &org.VpnPathsArgs{
			BfdProfile:       pulumi.String("string"),
			BfdUseTunnelMode: pulumi.Bool(false),
			Ip:               pulumi.String("string"),
			PeerPaths: org.VpnPathsPeerPathsMap{
				"string": &org.VpnPathsPeerPathsArgs{
					Preference: pulumi.Int(0),
				},
			},
			Pod: pulumi.Int(0),
			TrafficShaping: &org.VpnPathsTrafficShapingArgs{
				ClassPercentages: pulumi.IntArray{
					pulumi.Int(0),
				},
				Enabled:   pulumi.Bool(false),
				MaxTxKbps: pulumi.Int(0),
			},
		},
	},
	Name:  pulumi.String("string"),
	OrgId: pulumi.String("string"),
	PathSelection: &org.VpnPathSelectionArgs{
		Strategy: pulumi.String("string"),
	},
	Type: pulumi.String("string"),
})
Copy
var vpnResource = new Vpn("vpnResource", VpnArgs.builder()
    .paths(Map.of("string", Map.ofEntries(
        Map.entry("bfdProfile", "string"),
        Map.entry("bfdUseTunnelMode", false),
        Map.entry("ip", "string"),
        Map.entry("peerPaths", Map.of("string", Map.of("preference", 0))),
        Map.entry("pod", 0),
        Map.entry("trafficShaping", Map.ofEntries(
            Map.entry("classPercentages", 0),
            Map.entry("enabled", false),
            Map.entry("maxTxKbps", 0)
        ))
    )))
    .name("string")
    .orgId("string")
    .pathSelection(VpnPathSelectionArgs.builder()
        .strategy("string")
        .build())
    .type("string")
    .build());
Copy
vpn_resource = junipermist.org.Vpn("vpnResource",
    paths={
        "string": {
            "bfd_profile": "string",
            "bfd_use_tunnel_mode": False,
            "ip": "string",
            "peer_paths": {
                "string": {
                    "preference": 0,
                },
            },
            "pod": 0,
            "traffic_shaping": {
                "class_percentages": [0],
                "enabled": False,
                "max_tx_kbps": 0,
            },
        },
    },
    name="string",
    org_id="string",
    path_selection={
        "strategy": "string",
    },
    type="string")
Copy
const vpnResource = new junipermist.org.Vpn("vpnResource", {
    paths: {
        string: {
            bfdProfile: "string",
            bfdUseTunnelMode: false,
            ip: "string",
            peerPaths: {
                string: {
                    preference: 0,
                },
            },
            pod: 0,
            trafficShaping: {
                classPercentages: [0],
                enabled: false,
                maxTxKbps: 0,
            },
        },
    },
    name: "string",
    orgId: "string",
    pathSelection: {
        strategy: "string",
    },
    type: "string",
});
Copy
type: junipermist:org:Vpn
properties:
    name: string
    orgId: string
    pathSelection:
        strategy: string
    paths:
        string:
            bfdProfile: string
            bfdUseTunnelMode: false
            ip: string
            peerPaths:
                string:
                    preference: 0
            pod: 0
            trafficShaping:
                classPercentages:
                    - 0
                enabled: false
                maxTxKbps: 0
    type: string
Copy

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

Paths This property is required. Dictionary<string, Pulumi.JuniperMist.Org.Inputs.VpnPathsArgs>
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
Name string
OrgId string
PathSelection Pulumi.JuniperMist.Org.Inputs.VpnPathSelection
Only if type==hub_spoke
Type string
enum: hub_spoke, mesh
Paths This property is required. map[string]VpnPathsArgs
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
Name string
OrgId string
PathSelection VpnPathSelectionArgs
Only if type==hub_spoke
Type string
enum: hub_spoke, mesh
paths This property is required. Map<String,VpnPathsArgs>
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
name String
orgId String
pathSelection VpnPathSelection
Only if type==hub_spoke
type String
enum: hub_spoke, mesh
paths This property is required. {[key: string]: VpnPathsArgs}
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
name string
orgId string
pathSelection VpnPathSelection
Only if type==hub_spoke
type string
enum: hub_spoke, mesh
paths This property is required. Mapping[str, VpnPathsArgs]
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
name str
org_id str
path_selection VpnPathSelectionArgs
Only if type==hub_spoke
type str
enum: hub_spoke, mesh
paths This property is required. Map<Property Map>
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
name String
orgId String
pathSelection Property Map
Only if type==hub_spoke
type String
enum: hub_spoke, mesh

Outputs

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

Id string
The provider-assigned unique ID for this managed resource.
Id string
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.
id string
The provider-assigned unique ID for this managed resource.
id str
The provider-assigned unique ID for this managed resource.
id String
The provider-assigned unique ID for this managed resource.

Look up Existing Vpn Resource

Get an existing Vpn 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?: VpnState, opts?: CustomResourceOptions): Vpn
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        name: Optional[str] = None,
        org_id: Optional[str] = None,
        path_selection: Optional[VpnPathSelectionArgs] = None,
        paths: Optional[Mapping[str, VpnPathsArgs]] = None,
        type: Optional[str] = None) -> Vpn
func GetVpn(ctx *Context, name string, id IDInput, state *VpnState, opts ...ResourceOption) (*Vpn, error)
public static Vpn Get(string name, Input<string> id, VpnState? state, CustomResourceOptions? opts = null)
public static Vpn get(String name, Output<String> id, VpnState state, CustomResourceOptions options)
resources:  _:    type: junipermist:org:Vpn    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
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 This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
Name string
OrgId string
PathSelection Pulumi.JuniperMist.Org.Inputs.VpnPathSelection
Only if type==hub_spoke
Paths Dictionary<string, Pulumi.JuniperMist.Org.Inputs.VpnPathsArgs>
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
Type string
enum: hub_spoke, mesh
Name string
OrgId string
PathSelection VpnPathSelectionArgs
Only if type==hub_spoke
Paths map[string]VpnPathsArgs
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
Type string
enum: hub_spoke, mesh
name String
orgId String
pathSelection VpnPathSelection
Only if type==hub_spoke
paths Map<String,VpnPathsArgs>
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
type String
enum: hub_spoke, mesh
name string
orgId string
pathSelection VpnPathSelection
Only if type==hub_spoke
paths {[key: string]: VpnPathsArgs}
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
type string
enum: hub_spoke, mesh
name str
org_id str
path_selection VpnPathSelectionArgs
Only if type==hub_spoke
paths Mapping[str, VpnPathsArgs]
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
type str
enum: hub_spoke, mesh
name String
orgId String
pathSelection Property Map
Only if type==hub_spoke
paths Map<Property Map>
For type==hub_spoke, Property key is the VPN name. For type==mesh, Property key is the Interface name
type String
enum: hub_spoke, mesh

Supporting Types

VpnPathSelection
, VpnPathSelectionArgs

Strategy string
enum: disabled, simple, manual
Strategy string
enum: disabled, simple, manual
strategy String
enum: disabled, simple, manual
strategy string
enum: disabled, simple, manual
strategy str
enum: disabled, simple, manual
strategy String
enum: disabled, simple, manual

VpnPaths
, VpnPathsArgs

BfdProfile string
enum: broadband, lte
BfdUseTunnelMode bool
If type==mesh and for SSR only, whether to use tunnel mode
Ip string
If different from the wan port
PeerPaths Dictionary<string, Pulumi.JuniperMist.Org.Inputs.VpnPathsPeerPaths>
If type==mesh, Property key is the Peer Interface name
Pod int
TrafficShaping Pulumi.JuniperMist.Org.Inputs.VpnPathsTrafficShaping
BfdProfile string
enum: broadband, lte
BfdUseTunnelMode bool
If type==mesh and for SSR only, whether to use tunnel mode
Ip string
If different from the wan port
PeerPaths map[string]VpnPathsPeerPaths
If type==mesh, Property key is the Peer Interface name
Pod int
TrafficShaping VpnPathsTrafficShaping
bfdProfile String
enum: broadband, lte
bfdUseTunnelMode Boolean
If type==mesh and for SSR only, whether to use tunnel mode
ip String
If different from the wan port
peerPaths Map<String,VpnPathsPeerPaths>
If type==mesh, Property key is the Peer Interface name
pod Integer
trafficShaping VpnPathsTrafficShaping
bfdProfile string
enum: broadband, lte
bfdUseTunnelMode boolean
If type==mesh and for SSR only, whether to use tunnel mode
ip string
If different from the wan port
peerPaths {[key: string]: VpnPathsPeerPaths}
If type==mesh, Property key is the Peer Interface name
pod number
trafficShaping VpnPathsTrafficShaping
bfd_profile str
enum: broadband, lte
bfd_use_tunnel_mode bool
If type==mesh and for SSR only, whether to use tunnel mode
ip str
If different from the wan port
peer_paths Mapping[str, VpnPathsPeerPaths]
If type==mesh, Property key is the Peer Interface name
pod int
traffic_shaping VpnPathsTrafficShaping
bfdProfile String
enum: broadband, lte
bfdUseTunnelMode Boolean
If type==mesh and for SSR only, whether to use tunnel mode
ip String
If different from the wan port
peerPaths Map<Property Map>
If type==mesh, Property key is the Peer Interface name
pod Number
trafficShaping Property Map

VpnPathsPeerPaths
, VpnPathsPeerPathsArgs

preference Integer
preference number
preference Number

VpnPathsTrafficShaping
, VpnPathsTrafficShapingArgs

ClassPercentages List<int>
percentages for different class of traffic: high / medium / low / best-effort adding up to 100
Enabled bool
MaxTxKbps int
ClassPercentages []int
percentages for different class of traffic: high / medium / low / best-effort adding up to 100
Enabled bool
MaxTxKbps int
classPercentages List<Integer>
percentages for different class of traffic: high / medium / low / best-effort adding up to 100
enabled Boolean
maxTxKbps Integer
classPercentages number[]
percentages for different class of traffic: high / medium / low / best-effort adding up to 100
enabled boolean
maxTxKbps number
class_percentages Sequence[int]
percentages for different class of traffic: high / medium / low / best-effort adding up to 100
enabled bool
max_tx_kbps int
classPercentages List<Number>
percentages for different class of traffic: high / medium / low / best-effort adding up to 100
enabled Boolean
maxTxKbps Number

Import

Using pulumi import, import mist_org_vpn with:

Org VPN can be imported by specifying the org_id and the vpn_id

$ pulumi import junipermist:org/vpn:Vpn vpn_one 17b46405-3a6d-4715-8bb4-6bb6d06f316a.d3c42998-9012-4859-9743-6b9bee475309
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
junipermist pulumi/pulumi-junipermist
License
Apache-2.0
Notes
This Pulumi package is based on the mist Terraform Provider.