@pulumi/juniper-mist
Version:
A Pulumi package for creating and managing Juniper Mist resources.
223 lines (222 loc) • 9.76 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* This resource manages the Site Wxlan tags (labels).
* A WxTag is a label or tag used in the mist system to classify and categorize applications, users, and resources for the purpose of creating policies and making network management decisions.They can be used
* * within the Org WxRules to create filtering rules:
* * `mist_site_wxrule.dst_allow_wxtags`
* * `mist_site_wxrule.dst_deny_wxtags`
* * `mist_site_wxrule.dst_wxtags`
* * `mist_site_wxrule.src_wxtags`
* * within the Org WxRules to assign specific VLAN:
* * `mist_site_wxrule.apply_tags`
* * in the WLANs configuration to assign a WLAN to specific APs:
* * `mist_site_wlan.wxtag_ids`
* * to identify unknown application used by Wi-Fi clients
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as junipermist from "@pulumi/juniper-mist";
*
* const wxtagOne = new junipermist.site.Wxtag("wxtag_one", {
* siteId: terraformTest.id,
* name: "wtag_one",
* values: ["10.3.0.0/16"],
* op: "in",
* type: "match",
* match: "ip_range_subnet",
* });
* ```
*
* ## Import
*
* Using `pulumi import`, import `mist_site_wxtag` with:
*
* Site WxTag can be imported by specifying the site_id and the wxtag_id
*
* ```sh
* $ pulumi import junipermist:site/wxtag:Wxtag wxtag_one 17b46405-3a6d-4715-8bb4-6bb6d06f316a.d3c42998-9012-4859-9743-6b9bee475309
* ```
*/
export declare class Wxtag extends pulumi.CustomResource {
/**
* Get an existing Wxtag resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param state Any extra arguments used during the lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name: string, id: pulumi.Input<pulumi.ID>, state?: WxtagState, opts?: pulumi.CustomResourceOptions): Wxtag;
/**
* Returns true if the given object is an instance of Wxtag. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj: any): obj is Wxtag;
/**
* If `type`==`client`, Client MAC Address
*/
readonly mac: pulumi.Output<string | undefined>;
/**
* required if `type`==`match`. enum: `apId`, `app`, `assetMac`, `clientMac`, `hostname`, `ipRangeSubnet`, `port`, `pskName`, `pskRole`, `radiusAttr`, `radiusClass`, `radiusGroup`, `radiusUsername`, `sdkclientUuid`, `wlanId`
*/
readonly match: pulumi.Output<string | undefined>;
/**
* The name
*/
readonly name: pulumi.Output<string>;
/**
* required if `type`==`match`, type of tag (inclusive/exclusive). enum: `in`, `notIn`
*/
readonly op: pulumi.Output<string | undefined>;
readonly siteId: pulumi.Output<string>;
/**
* If `type`==`spec`
*/
readonly specs: pulumi.Output<outputs.site.WxtagSpec[] | undefined>;
/**
* enum: `client`, `match`, `resource`, `spec`, `subnet`, `vlan`
*/
readonly type: pulumi.Output<string>;
/**
* Required if `type`==`match` and
* * `match`==`apId`: list of AP IDs
* * `match`==`app`: list of Application Names
* * `match`==`assetMac`: list of Asset MAC Addresses
* * `match`==`clientMac`: list of Client MAC Addresses
* * `match`==`hostname`: list of Resources Hostnames
* * `match`==`ipRangeSubnet`: list of IP Addresses and/or CIDRs
* * `match`==`pskName`: list of PSK Names
* * `match`==`pskRole`: list of PSK Roles
* * `match`==`port`: list of Ports or Port Ranges
* * `match`==`radiusAttr`: list of RADIUS Attributes. The values are [ "6=1", "26=10.2.3.4" ], this support other RADIUS attributes where we know the type
* * `match`==`radiusClass`: list of RADIUS Classes. This matches the ATTR-Class(25)
* * `match`==`radiusGroup`: list of RADIUS Groups. This is a smart tag that matches RADIUS-Filter-ID, Airespace-ACL-Name (VendorID=14179, VendorType=6) / Aruba-User-Role (VendorID=14823, VendorType=1)
* * `match`==`radiusUsername`: list of RADIUS Usernames. This matches the ATTR-User-Name(1)
* * `match`==`sdkclientUuid`: list of SDK UUIDs
* * `match`==`wlanId`: list of WLAN IDs
*
* **Notes**:
* Variables are not allowed
*/
readonly values: pulumi.Output<string[] | undefined>;
readonly vlanId: pulumi.Output<string | undefined>;
/**
* Create a Wxtag resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name: string, args: WxtagArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Wxtag resources.
*/
export interface WxtagState {
/**
* If `type`==`client`, Client MAC Address
*/
mac?: pulumi.Input<string>;
/**
* required if `type`==`match`. enum: `apId`, `app`, `assetMac`, `clientMac`, `hostname`, `ipRangeSubnet`, `port`, `pskName`, `pskRole`, `radiusAttr`, `radiusClass`, `radiusGroup`, `radiusUsername`, `sdkclientUuid`, `wlanId`
*/
match?: pulumi.Input<string>;
/**
* The name
*/
name?: pulumi.Input<string>;
/**
* required if `type`==`match`, type of tag (inclusive/exclusive). enum: `in`, `notIn`
*/
op?: pulumi.Input<string>;
siteId?: pulumi.Input<string>;
/**
* If `type`==`spec`
*/
specs?: pulumi.Input<pulumi.Input<inputs.site.WxtagSpec>[]>;
/**
* enum: `client`, `match`, `resource`, `spec`, `subnet`, `vlan`
*/
type?: pulumi.Input<string>;
/**
* Required if `type`==`match` and
* * `match`==`apId`: list of AP IDs
* * `match`==`app`: list of Application Names
* * `match`==`assetMac`: list of Asset MAC Addresses
* * `match`==`clientMac`: list of Client MAC Addresses
* * `match`==`hostname`: list of Resources Hostnames
* * `match`==`ipRangeSubnet`: list of IP Addresses and/or CIDRs
* * `match`==`pskName`: list of PSK Names
* * `match`==`pskRole`: list of PSK Roles
* * `match`==`port`: list of Ports or Port Ranges
* * `match`==`radiusAttr`: list of RADIUS Attributes. The values are [ "6=1", "26=10.2.3.4" ], this support other RADIUS attributes where we know the type
* * `match`==`radiusClass`: list of RADIUS Classes. This matches the ATTR-Class(25)
* * `match`==`radiusGroup`: list of RADIUS Groups. This is a smart tag that matches RADIUS-Filter-ID, Airespace-ACL-Name (VendorID=14179, VendorType=6) / Aruba-User-Role (VendorID=14823, VendorType=1)
* * `match`==`radiusUsername`: list of RADIUS Usernames. This matches the ATTR-User-Name(1)
* * `match`==`sdkclientUuid`: list of SDK UUIDs
* * `match`==`wlanId`: list of WLAN IDs
*
* **Notes**:
* Variables are not allowed
*/
values?: pulumi.Input<pulumi.Input<string>[]>;
vlanId?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a Wxtag resource.
*/
export interface WxtagArgs {
/**
* If `type`==`client`, Client MAC Address
*/
mac?: pulumi.Input<string>;
/**
* required if `type`==`match`. enum: `apId`, `app`, `assetMac`, `clientMac`, `hostname`, `ipRangeSubnet`, `port`, `pskName`, `pskRole`, `radiusAttr`, `radiusClass`, `radiusGroup`, `radiusUsername`, `sdkclientUuid`, `wlanId`
*/
match?: pulumi.Input<string>;
/**
* The name
*/
name?: pulumi.Input<string>;
/**
* required if `type`==`match`, type of tag (inclusive/exclusive). enum: `in`, `notIn`
*/
op?: pulumi.Input<string>;
siteId: pulumi.Input<string>;
/**
* If `type`==`spec`
*/
specs?: pulumi.Input<pulumi.Input<inputs.site.WxtagSpec>[]>;
/**
* enum: `client`, `match`, `resource`, `spec`, `subnet`, `vlan`
*/
type: pulumi.Input<string>;
/**
* Required if `type`==`match` and
* * `match`==`apId`: list of AP IDs
* * `match`==`app`: list of Application Names
* * `match`==`assetMac`: list of Asset MAC Addresses
* * `match`==`clientMac`: list of Client MAC Addresses
* * `match`==`hostname`: list of Resources Hostnames
* * `match`==`ipRangeSubnet`: list of IP Addresses and/or CIDRs
* * `match`==`pskName`: list of PSK Names
* * `match`==`pskRole`: list of PSK Roles
* * `match`==`port`: list of Ports or Port Ranges
* * `match`==`radiusAttr`: list of RADIUS Attributes. The values are [ "6=1", "26=10.2.3.4" ], this support other RADIUS attributes where we know the type
* * `match`==`radiusClass`: list of RADIUS Classes. This matches the ATTR-Class(25)
* * `match`==`radiusGroup`: list of RADIUS Groups. This is a smart tag that matches RADIUS-Filter-ID, Airespace-ACL-Name (VendorID=14179, VendorType=6) / Aruba-User-Role (VendorID=14823, VendorType=1)
* * `match`==`radiusUsername`: list of RADIUS Usernames. This matches the ATTR-User-Name(1)
* * `match`==`sdkclientUuid`: list of SDK UUIDs
* * `match`==`wlanId`: list of WLAN IDs
*
* **Notes**:
* Variables are not allowed
*/
values?: pulumi.Input<pulumi.Input<string>[]>;
vlanId?: pulumi.Input<string>;
}