UNPKG

@pulumi/juniper-mist

Version:

A Pulumi package for creating and managing Juniper Mist resources.

290 lines 10.4 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This resource manages Org NAC Portals. * * NAC Portal configuration defines the authentication portal for network access control. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as junipermist from "@pulumi/juniper-mist"; * * const guestPortal = new junipermist.org.NacPortal("guest_portal", { * orgId: terraformTest.id, * name: "Guest Portal", * type: "marvis_client", * accessType: "wireless+wired", * ssid: "Guest-Network", * certExpireTime: 365, * eapType: "wpa3", * enableTelemetry: true, * expiryNotificationTime: 30, * notifyExpiry: true, * tos: "By using this network, you agree to our terms of service and privacy policy.", * additionalCacerts: [`-----BEGIN CERTIFICATE----- * MIIC...certificate...content * -----END CERTIFICATE-----`], * additionalNacServerNames: [ * "nac1.example.com", * "nac2.example.com", * ], * portal: { * auth: "multi", * expire: 43200, * externalPortalUrl: "https://portal.example.com/external", * forceReconnect: false, * forward: true, * forwardUrl: "https://example.com/portal/welcome", * maxNumDevices: 10, * privacy: true, * }, * sso: { * idpCert: `-----BEGIN CERTIFICATE----- * MIIC...idp...cert * -----END CERTIFICATE-----`, * idpSignAlgo: "sha384", * idpSsoUrl: "https://idp.example.com/saml/sso", * issuer: "https://idp.example.com", * nameidFormat: "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent", * useSsoRoleForCert: false, * ssoRoleMatchings: [ * { * match: "Administrator", * assigned: "full-access", * }, * { * match: "Manager", * assigned: "manager-access", * }, * { * match: "Employee", * assigned: "employee-access", * }, * { * match: "Guest", * assigned: "guest-access", * }, * ], * }, * }); * ``` */ export declare class NacPortal extends pulumi.CustomResource { /** * Get an existing NacPortal 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?: NacPortalState, opts?: pulumi.CustomResourceOptions): NacPortal; /** * Returns true if the given object is an instance of NacPortal. 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 NacPortal; /** * If `type`==`marvisClient`, whether onboarding applies to wireless clients or both wireless and wired clients */ readonly accessType: pulumi.Output<string>; /** * Additional CA certificates trusted during NAC portal certificate onboarding */ readonly additionalCacerts: pulumi.Output<string[] | undefined>; /** * Optional list of additional NAC server names */ readonly additionalNacServerNames: pulumi.Output<string[] | undefined>; /** * Validity duration for portal-issued client certificates, in days */ readonly certExpireTime: pulumi.Output<number | undefined>; /** * EAP mode used when onboarding wireless clients through the NAC portal */ readonly eapType: pulumi.Output<string>; /** * Model, version, fingering, events (connecting, disconnect, roaming), which ap */ readonly enableTelemetry: pulumi.Output<boolean | undefined>; /** * Number of days before certificate expiration to start sending reminder notifications */ readonly expiryNotificationTime: pulumi.Output<number | undefined>; /** * Human-readable name of the NAC portal */ readonly name: pulumi.Output<string>; /** * Whether to send reminder notifications before portal-issued certificates expire */ readonly notifyExpiry: pulumi.Output<boolean | undefined>; /** * Organization that owns this NAC portal */ readonly orgId: pulumi.Output<string>; /** * Guest portal settings used when `type`==`guestPortal` */ readonly portal: pulumi.Output<outputs.org.NacPortalPortal | undefined>; /** * Wireless SSID associated with the NAC portal */ readonly ssid: pulumi.Output<string | undefined>; /** * SAML SSO settings for NAC portal authentication and role mapping */ readonly sso: pulumi.Output<outputs.org.NacPortalSso | undefined>; /** * Terms of service text shown in the NAC portal */ readonly tos: pulumi.Output<string | undefined>; /** * NAC portal mode, such as guest admin, guest portal, or Marvis client onboarding */ readonly type: pulumi.Output<string | undefined>; /** * Create a NacPortal 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: NacPortalArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering NacPortal resources. */ export interface NacPortalState { /** * If `type`==`marvisClient`, whether onboarding applies to wireless clients or both wireless and wired clients */ accessType?: pulumi.Input<string | undefined>; /** * Additional CA certificates trusted during NAC portal certificate onboarding */ additionalCacerts?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Optional list of additional NAC server names */ additionalNacServerNames?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Validity duration for portal-issued client certificates, in days */ certExpireTime?: pulumi.Input<number | undefined>; /** * EAP mode used when onboarding wireless clients through the NAC portal */ eapType?: pulumi.Input<string | undefined>; /** * Model, version, fingering, events (connecting, disconnect, roaming), which ap */ enableTelemetry?: pulumi.Input<boolean | undefined>; /** * Number of days before certificate expiration to start sending reminder notifications */ expiryNotificationTime?: pulumi.Input<number | undefined>; /** * Human-readable name of the NAC portal */ name?: pulumi.Input<string | undefined>; /** * Whether to send reminder notifications before portal-issued certificates expire */ notifyExpiry?: pulumi.Input<boolean | undefined>; /** * Organization that owns this NAC portal */ orgId?: pulumi.Input<string | undefined>; /** * Guest portal settings used when `type`==`guestPortal` */ portal?: pulumi.Input<inputs.org.NacPortalPortal | undefined>; /** * Wireless SSID associated with the NAC portal */ ssid?: pulumi.Input<string | undefined>; /** * SAML SSO settings for NAC portal authentication and role mapping */ sso?: pulumi.Input<inputs.org.NacPortalSso | undefined>; /** * Terms of service text shown in the NAC portal */ tos?: pulumi.Input<string | undefined>; /** * NAC portal mode, such as guest admin, guest portal, or Marvis client onboarding */ type?: pulumi.Input<string | undefined>; } /** * The set of arguments for constructing a NacPortal resource. */ export interface NacPortalArgs { /** * If `type`==`marvisClient`, whether onboarding applies to wireless clients or both wireless and wired clients */ accessType?: pulumi.Input<string | undefined>; /** * Additional CA certificates trusted during NAC portal certificate onboarding */ additionalCacerts?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Optional list of additional NAC server names */ additionalNacServerNames?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Validity duration for portal-issued client certificates, in days */ certExpireTime?: pulumi.Input<number | undefined>; /** * EAP mode used when onboarding wireless clients through the NAC portal */ eapType?: pulumi.Input<string | undefined>; /** * Model, version, fingering, events (connecting, disconnect, roaming), which ap */ enableTelemetry?: pulumi.Input<boolean | undefined>; /** * Number of days before certificate expiration to start sending reminder notifications */ expiryNotificationTime?: pulumi.Input<number | undefined>; /** * Human-readable name of the NAC portal */ name?: pulumi.Input<string | undefined>; /** * Whether to send reminder notifications before portal-issued certificates expire */ notifyExpiry?: pulumi.Input<boolean | undefined>; /** * Organization that owns this NAC portal */ orgId: pulumi.Input<string>; /** * Guest portal settings used when `type`==`guestPortal` */ portal?: pulumi.Input<inputs.org.NacPortalPortal | undefined>; /** * Wireless SSID associated with the NAC portal */ ssid?: pulumi.Input<string | undefined>; /** * SAML SSO settings for NAC portal authentication and role mapping */ sso?: pulumi.Input<inputs.org.NacPortalSso | undefined>; /** * Terms of service text shown in the NAC portal */ tos?: pulumi.Input<string | undefined>; /** * NAC portal mode, such as guest admin, guest portal, or Marvis client onboarding */ type?: pulumi.Input<string | undefined>; } //# sourceMappingURL=nacPortal.d.ts.map