import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; export interface AddressGroupDynamic { /** * Tag based filter defining group membership */ filter: pulumi.Input; } export interface AggregateInterfaceLayer2 { /** * Lacp */ lacp?: pulumi.Input; /** * Name of Netflow Profile to assign to Interface */ netflowProfile?: pulumi.Input; /** * VLAN tag */ vlanTag?: pulumi.Input; } export interface AggregateInterfaceLayer2Lacp { /** * Enable LACP? */ enable?: pulumi.Input; /** * Fast failover */ fastFailover?: pulumi.Input; /** * Maximum number of physical ports bundled in the LAG */ maxPorts?: pulumi.Input; /** * Mode */ mode?: pulumi.Input; /** * LACP system priority in system ID */ systemPriority?: pulumi.Input; /** * Transmission mode */ transmissionRate?: pulumi.Input; } export interface AggregateInterfaceLayer3 { /** * Aggregate Ethernet ARP configuration */ arps?: pulumi.Input[] | undefined>; /** * Dynamic DNS configuration specific to the Aggregate Interface. */ ddnsConfig?: pulumi.Input; /** * Aggregate Ethernet DHCP Client Object */ dhcpClient?: pulumi.Input; /** * Interface management profile */ interfaceManagementProfile?: pulumi.Input; /** * Aggregate Interface IP addresses * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `ip`. */ ips?: pulumi.Input[] | undefined>; /** * Lacp */ lacp?: pulumi.Input; /** * MTU */ mtu?: pulumi.Input; /** * Name of Netflow Profile to assign to Interface */ netflowProfile?: pulumi.Input; } export interface AggregateInterfaceLayer3Arp { /** * MAC address */ hwAddress?: pulumi.Input; /** * IP address */ name?: pulumi.Input; } export interface AggregateInterfaceLayer3DdnsConfig { /** * Certificate profile */ ddnsCertProfile: pulumi.Input; /** * Enable DDNS? */ ddnsEnabled?: pulumi.Input; /** * Ddns hostname */ ddnsHostname: pulumi.Input; /** * IP to register (static only) */ ddnsIp?: pulumi.Input; /** * Update interval (days) */ ddnsUpdateInterval?: pulumi.Input; /** * DDNS vendor */ ddnsVendor: pulumi.Input; /** * DDNS vendor */ ddnsVendorConfig: pulumi.Input; } export interface AggregateInterfaceLayer3DhcpClient { /** * Automatically create default route pointing to default gateway provided by server */ createDefaultRoute?: pulumi.Input; /** * Metric of the default route created */ defaultRouteMetric?: pulumi.Input; /** * Enable DHCP? */ enable?: pulumi.Input; /** * Aggregate Ethernet DHCP Client Send hostname */ sendHostname?: pulumi.Input; } export interface AggregateInterfaceLayer3DhcpClientSendHostname { /** * Enable */ enable?: pulumi.Input; /** * Set interface hostname */ hostname?: pulumi.Input; } export interface AggregateInterfaceLayer3Ip { /** * Aggregate Interface IP addresses name */ name: pulumi.Input; } export interface AggregateInterfaceLayer3Lacp { /** * Enable LACP? */ enable?: pulumi.Input; /** * Fast failover */ fastFailover?: pulumi.Input; /** * Maximum number of physical ports bundled in the LAG */ maxPorts?: pulumi.Input; /** * Mode */ mode?: pulumi.Input; /** * LACP system priority in system ID */ systemPriority?: pulumi.Input; /** * Transmission mode */ transmissionRate?: pulumi.Input; } export interface AntiSpywareProfileMicaEngineSpywareEnabled { /** * Inline policy action */ inlinePolicyAction?: pulumi.Input; /** * Name */ name?: pulumi.Input; } export interface AntiSpywareProfileRule { /** * anti spyware profiles rules default action */ action?: pulumi.Input; /** * Category */ category?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * Packet capture */ packetCapture?: pulumi.Input; /** * Severity */ severities?: pulumi.Input[] | undefined>; /** * Threat name */ threatName?: pulumi.Input; } export interface AntiSpywareProfileRuleAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ allow?: pulumi.Input; /** * anti spyware profiles rules action block ip * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ blockIp?: pulumi.Input; /** * Drop * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ drop?: pulumi.Input; /** * Reset both * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetBoth?: pulumi.Input; /** * Reset client * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetClient?: pulumi.Input; /** * Reset server * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetServer?: pulumi.Input; } export interface AntiSpywareProfileRuleActionAlert { } export interface AntiSpywareProfileRuleActionAllow { } export interface AntiSpywareProfileRuleActionBlockIp { /** * Duration */ duration?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface AntiSpywareProfileRuleActionDrop { } export interface AntiSpywareProfileRuleActionResetBoth { } export interface AntiSpywareProfileRuleActionResetClient { } export interface AntiSpywareProfileRuleActionResetServer { } export interface AntiSpywareProfileThreatException { /** * anti spyware profiles threat exception default action */ action?: pulumi.Input; /** * Exempt ip */ exemptIps?: pulumi.Input[] | undefined>; /** * Name */ name?: pulumi.Input; /** * Notes */ notes?: pulumi.Input; /** * Packet capture */ packetCapture?: pulumi.Input; } export interface AntiSpywareProfileThreatExceptionAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ allow?: pulumi.Input; /** * anti spyware profiles threat exception action block ip * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ blockIp?: pulumi.Input; /** * Default * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ default?: pulumi.Input; /** * Drop * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ drop?: pulumi.Input; /** * Reset both * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetBoth?: pulumi.Input; /** * Reset client * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetClient?: pulumi.Input; /** * Reset server * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetServer?: pulumi.Input; } export interface AntiSpywareProfileThreatExceptionActionAlert { } export interface AntiSpywareProfileThreatExceptionActionAllow { } export interface AntiSpywareProfileThreatExceptionActionBlockIp { /** * Duration */ duration?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface AntiSpywareProfileThreatExceptionActionDefault { } export interface AntiSpywareProfileThreatExceptionActionDrop { } export interface AntiSpywareProfileThreatExceptionActionResetBoth { } export interface AntiSpywareProfileThreatExceptionActionResetClient { } export interface AntiSpywareProfileThreatExceptionActionResetServer { } export interface AntiSpywareProfileThreatExceptionExemptIp { /** * Name */ name: pulumi.Input; } export interface AntiSpywareSignatureDefaultAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ allow?: pulumi.Input; /** * anti spyware signature block ip * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ blockIp?: pulumi.Input; /** * Drop * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ drop?: pulumi.Input; /** * Reset both * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetBoth?: pulumi.Input; /** * Reset client * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetClient?: pulumi.Input; /** * Reset server * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetServer?: pulumi.Input; } export interface AntiSpywareSignatureDefaultActionAlert { } export interface AntiSpywareSignatureDefaultActionAllow { } export interface AntiSpywareSignatureDefaultActionBlockIp { /** * Duration */ duration?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface AntiSpywareSignatureDefaultActionDrop { } export interface AntiSpywareSignatureDefaultActionResetBoth { } export interface AntiSpywareSignatureDefaultActionResetClient { } export interface AntiSpywareSignatureDefaultActionResetServer { } export interface AntiSpywareSignatureSignature { /** * anti spyware signature combination */ combination?: pulumi.Input; /** * Standard * * > ℹ️ **Note:** You must specify exactly one of `combination` and `standard`. */ standards?: pulumi.Input[] | undefined>; } export interface AntiSpywareSignatureSignatureCombination { /** * And condition */ andConditions?: pulumi.Input[] | undefined>; /** * Order free */ orderFree?: pulumi.Input; /** * anti spyware time attribute */ timeAttribute?: pulumi.Input; } export interface AntiSpywareSignatureSignatureCombinationAndCondition { /** * Name */ name?: pulumi.Input; /** * Or condition */ orConditions?: pulumi.Input[] | undefined>; } export interface AntiSpywareSignatureSignatureCombinationAndConditionOrCondition { /** * Name */ name?: pulumi.Input; /** * Threat id */ threatId?: pulumi.Input; } export interface AntiSpywareSignatureSignatureCombinationTimeAttribute { /** * Interval */ interval?: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandard { /** * And condition */ andConditions?: pulumi.Input[] | undefined>; /** * Comment */ comment?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Order free */ orderFree?: pulumi.Input; /** * Scope */ scope?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndCondition { /** * Name */ name?: pulumi.Input; /** * Or condition */ orConditions?: pulumi.Input[] | undefined>; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrCondition { /** * Name */ name?: pulumi.Input; /** * Operator */ operator?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperator { /** * Equal to */ equalTo?: pulumi.Input; /** * Greater than */ greaterThan?: pulumi.Input; /** * Less than */ lessThan?: pulumi.Input; /** * Pattern match */ patternMatch?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorEqualTo { /** * Context */ context?: pulumi.Input; /** * Negate */ negate?: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorEqualToQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorGreaterThan { /** * Context */ context?: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorGreaterThanQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorLessThan { /** * Context */ context?: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorLessThanQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorPatternMatch { /** * Context */ context?: pulumi.Input; /** * Negate */ negate?: pulumi.Input; /** * Pattern */ pattern?: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; } export interface AntiSpywareSignatureSignatureStandardAndConditionOrConditionOperatorPatternMatchQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface ApplicationDefault { /** * Ident by icmp6 type */ identByIcmp6Type?: pulumi.Input; /** * Ident by icmp type * * > ℹ️ **Note:** You must specify exactly one of `identByIcmp6Type`, `identByIcmpType`, `identByIpProtocol`, and `port`. */ identByIcmpType?: pulumi.Input; /** * Ident by ip protocol * * > ℹ️ **Note:** You must specify exactly one of `identByIcmp6Type`, `identByIcmpType`, `identByIpProtocol`, and `port`. */ identByIpProtocol?: pulumi.Input; /** * Port * * > ℹ️ **Note:** You must specify exactly one of `identByIcmp6Type`, `identByIcmpType`, `identByIpProtocol`, and `port`. */ ports?: pulumi.Input[] | undefined>; } export interface ApplicationDefaultIdentByIcmp6Type { /** * Code */ code?: pulumi.Input; /** * Type */ type: pulumi.Input; } export interface ApplicationDefaultIdentByIcmpType { /** * Code */ code?: pulumi.Input; /** * Type */ type: pulumi.Input; } export interface ApplicationFilterTagging { /** * No tag */ noTag?: pulumi.Input; /** * Tag * * > ℹ️ **Note:** You must specify exactly one of `noTag` and `tag`. */ tags?: pulumi.Input[] | undefined>; } export interface ApplicationSignature { /** * And condition */ andConditions?: pulumi.Input[] | undefined>; /** * Comment */ comment?: pulumi.Input; /** * Alphanumeric string [ 0-9a-zA-Z._-] */ name: pulumi.Input; /** * Order free */ orderFree?: pulumi.Input; /** * Scope */ scope?: pulumi.Input; } export interface ApplicationSignatureAndCondition { /** * Alphanumeric string [ 0-9a-zA-Z._-] */ name: pulumi.Input; /** * Or condition */ orConditions?: pulumi.Input[] | undefined>; } export interface ApplicationSignatureAndConditionOrCondition { /** * Alphanumeric string [ 0-9a-zA-Z._-] */ name: pulumi.Input; /** * Operator */ operator: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperator { /** * Equal to */ equalTo?: pulumi.Input; /** * Greater than * * > ℹ️ **Note:** You must specify exactly one of `equalTo`, `greaterThan`, `lessThan`, and `patternMatch`. */ greaterThan?: pulumi.Input; /** * Less than * * > ℹ️ **Note:** You must specify exactly one of `equalTo`, `greaterThan`, `lessThan`, and `patternMatch`. */ lessThan?: pulumi.Input; /** * Pattern match * * > ℹ️ **Note:** You must specify exactly one of `equalTo`, `greaterThan`, `lessThan`, and `patternMatch`. */ patternMatch?: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperatorEqualTo { /** * Context */ context: pulumi.Input; /** * 4-byte hex value */ mask?: pulumi.Input; /** * Position */ position?: pulumi.Input; /** * Value */ value: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperatorGreaterThan { /** * Context */ context: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperatorGreaterThanQualifier { /** * Alphanumeric string [ 0-9a-zA-Z._-] */ name: pulumi.Input; /** * Value */ value: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperatorLessThan { /** * Context */ context: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperatorLessThanQualifier { /** * Alphanumeric string [ 0-9a-zA-Z._-] */ name: pulumi.Input; /** * Value */ value: pulumi.Input; } export interface ApplicationSignatureAndConditionOrConditionOperatorPatternMatch { /** * Context */ context: pulumi.Input; /** * Pattern */ pattern: pulumi.Input; /** * Qualifier */ qualifiers?: pulumi.Input[] | undefined>; } export interface ApplicationSignatureAndConditionOrConditionOperatorPatternMatchQualifier { /** * Alphanumeric string [ 0-9a-zA-Z._-] */ name: pulumi.Input; /** * Value */ value: pulumi.Input; } export interface AuthenticationProfileLockout { /** * Lockout object - failedAttempts of authentication profile */ failedAttempts?: pulumi.Input; /** * Lockout object - lockout-time of authentication profile */ lockoutTime?: pulumi.Input; } export interface AuthenticationProfileMethod { /** * Cloud */ cloud?: pulumi.Input; /** * Kerberos * * > ℹ️ **Note:** You must specify exactly one of `cloud`, `kerberos`, `ldap`, `localDatabase`, `radius`, `samlIdp`, and `tacplus`. */ kerberos?: pulumi.Input; /** * Ldap * * > ℹ️ **Note:** You must specify exactly one of `cloud`, `kerberos`, `ldap`, `localDatabase`, `radius`, `samlIdp`, and `tacplus`. */ ldap?: pulumi.Input; /** * Local database * * > ℹ️ **Note:** You must specify exactly one of `cloud`, `kerberos`, `ldap`, `localDatabase`, `radius`, `samlIdp`, and `tacplus`. */ localDatabase?: pulumi.Input; /** * Radius * * > ℹ️ **Note:** You must specify exactly one of `cloud`, `kerberos`, `ldap`, `localDatabase`, `radius`, `samlIdp`, and `tacplus`. */ radius?: pulumi.Input; /** * Saml idp * * > ℹ️ **Note:** You must specify exactly one of `cloud`, `kerberos`, `ldap`, `localDatabase`, `radius`, `samlIdp`, and `tacplus`. */ samlIdp?: pulumi.Input; /** * Tacplus * * > ℹ️ **Note:** You must specify exactly one of `cloud`, `kerberos`, `ldap`, `localDatabase`, `radius`, `samlIdp`, and `tacplus`. */ tacplus?: pulumi.Input; } export interface AuthenticationProfileMethodCloud { /** * The tenant profile name */ profileName?: pulumi.Input; } export interface AuthenticationProfileMethodKerberos { /** * method kerberos object realm of authentication profile */ realm?: pulumi.Input; /** * method kerberos object server profile of authentication profile */ serverProfile?: pulumi.Input; } export interface AuthenticationProfileMethodLdap { /** * Login attribute */ loginAttribute?: pulumi.Input; /** * Passwd exp days */ passwdExpDays?: pulumi.Input; /** * Server profile */ serverProfile?: pulumi.Input; } export interface AuthenticationProfileMethodLocalDatabase { } export interface AuthenticationProfileMethodRadius { /** * method radius object check group of authentication profile */ checkgroup?: pulumi.Input; /** * method radius object server profile of authentication profile */ serverProfile?: pulumi.Input; } export interface AuthenticationProfileMethodSamlIdp { /** * Attribute name usergroup */ attributeNameUsergroup?: pulumi.Input; /** * Attribute name username */ attributeNameUsername?: pulumi.Input; /** * method object saml idp certificate profile of authentication profile */ certificateProfile?: pulumi.Input; /** * Enable single logout */ enableSingleLogout?: pulumi.Input; /** * Request signing certificate */ requestSigningCertificate?: pulumi.Input; /** * method object saml idp server profile of authentication profile */ serverProfile?: pulumi.Input; } export interface AuthenticationProfileMethodTacplus { /** * method tacplus object check group of authentication profile */ checkgroup?: pulumi.Input; /** * method tacplus object check group of authentication profile */ serverProfile?: pulumi.Input; } export interface AuthenticationProfileMultiFactorAuth { /** * Factors */ factors?: pulumi.Input[] | undefined>; /** * Mfa enable */ mfaEnable?: pulumi.Input; } export interface AuthenticationProfileSingleSignOn { /** * Kerberos keytab */ kerberosKeytab?: pulumi.Input; /** * Realm */ realm?: pulumi.Input; } export interface AuthenticationSettingAuthentication { /** * Accounting server profile */ accountingServerProfile?: pulumi.Input; /** * Authentication profile */ authenticationProfile?: pulumi.Input; /** * Certificate profile */ certificateProfile?: pulumi.Input; } export interface AutoVpnClusterBranch { /** * BGP redistribution profile */ bgpRedistributionProfile?: pulumi.Input; /** * Interfaces */ interfaces?: pulumi.Input[] | undefined>; /** * Router */ logicalRouter?: pulumi.Input; /** * Branch firewall serial number */ name?: pulumi.Input; /** * Private interfaces */ privateInterfaces?: pulumi.Input[] | undefined>; /** * Site name */ site?: pulumi.Input; } export interface AutoVpnClusterBranchInterface { /** * DHCP IP */ dhcpIp?: pulumi.Input; /** * Ethernet interface */ name?: pulumi.Input; /** * Sdwan link settings */ sdwanLinkSettings?: pulumi.Input; } export interface AutoVpnClusterBranchInterfaceSdwanLinkSettings { /** * Next hop gateway */ sdwanGateway?: pulumi.Input; /** * SD-WAN interface profile */ sdwanInterfaceProfile?: pulumi.Input; /** * Upstream nat */ upstreamNat?: pulumi.Input; } export interface AutoVpnClusterBranchInterfaceSdwanLinkSettingsUpstreamNat { /** * Upstream NAT? */ enable?: pulumi.Input; /** * Static ip */ staticIp?: pulumi.Input; } export interface AutoVpnClusterBranchInterfaceSdwanLinkSettingsUpstreamNatStaticIp { /** * FQDN */ fqdn?: pulumi.Input; /** * IP address * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ipAddress`. */ ipAddress?: pulumi.Input; } export interface AutoVpnClusterBranchPrivateInterface { /** * Ethernet interface */ name?: pulumi.Input; /** * Sdwan link settings */ sdwanLinkSettings?: pulumi.Input; } export interface AutoVpnClusterBranchPrivateInterfaceSdwanLinkSettings { /** * Next hop gateway */ sdwanGateway?: pulumi.Input; /** * SD-WAN interface profile */ sdwanInterfaceProfile?: pulumi.Input; /** * Upstream nat */ upstreamNat?: pulumi.Input; } export interface AutoVpnClusterBranchPrivateInterfaceSdwanLinkSettingsUpstreamNat { /** * Upstream NAT? */ enable?: pulumi.Input; /** * Static ip */ staticIp?: pulumi.Input; } export interface AutoVpnClusterBranchPrivateInterfaceSdwanLinkSettingsUpstreamNatStaticIp { /** * FQDN */ fqdn?: pulumi.Input; /** * IP address * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ipAddress`. */ ipAddress?: pulumi.Input; } export interface AutoVpnClusterGateway { /** * Allow DIA to VPN failover on branch device for the hub? */ allowDiaVpnFailover?: pulumi.Input; /** * BGP redistribution file */ bgpRedistributionProfile?: pulumi.Input; /** * Interfaces */ interfaces?: pulumi.Input[] | undefined>; /** * Router */ logicalRouter?: pulumi.Input; /** * Hub firewall serial number */ name?: pulumi.Input; /** * Priority */ priority?: pulumi.Input; /** * Private interfaces */ privateInterfaces?: pulumi.Input[] | undefined>; /** * Site name */ site?: pulumi.Input; } export interface AutoVpnClusterGatewayInterface { /** * DHCP IP */ dhcpIp?: pulumi.Input; /** * Ethernet interface */ name?: pulumi.Input; /** * Sdwan link settings */ sdwanLinkSettings?: pulumi.Input; } export interface AutoVpnClusterGatewayInterfaceSdwanLinkSettings { /** * Next hop gateway */ sdwanGateway?: pulumi.Input; /** * SD-WAN interface profile */ sdwanInterfaceProfile?: pulumi.Input; /** * Upstream nat */ upstreamNat?: pulumi.Input; } export interface AutoVpnClusterGatewayInterfaceSdwanLinkSettingsUpstreamNat { /** * Upstream NAT? */ enable?: pulumi.Input; /** * Static ip */ staticIp?: pulumi.Input; } export interface AutoVpnClusterGatewayInterfaceSdwanLinkSettingsUpstreamNatStaticIp { /** * FQDN */ fqdn?: pulumi.Input; /** * IP address * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ipAddress`. */ ipAddress?: pulumi.Input; } export interface AutoVpnClusterGatewayPrivateInterface { /** * Ethernet interface */ name?: pulumi.Input; /** * Sdwan link settings */ sdwanLinkSettings?: pulumi.Input; } export interface AutoVpnClusterGatewayPrivateInterfaceSdwanLinkSettings { /** * Next hop gateway */ sdwanGateway?: pulumi.Input; /** * SD-WAN interface profile */ sdwanInterfaceProfile?: pulumi.Input; /** * Upstream nat */ upstreamNat?: pulumi.Input; } export interface AutoVpnClusterGatewayPrivateInterfaceSdwanLinkSettingsUpstreamNat { /** * Upstream NAT? */ enable?: pulumi.Input; /** * Static ip */ staticIp?: pulumi.Input; } export interface AutoVpnClusterGatewayPrivateInterfaceSdwanLinkSettingsUpstreamNatStaticIp { /** * FQDN */ fqdn?: pulumi.Input; /** * IP address * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ipAddress`. */ ipAddress?: pulumi.Input; } export interface AutoVpnSettingAsRange { /** * End */ end?: pulumi.Input; /** * Start */ start?: pulumi.Input; } export interface BandwidthAllocationQos { /** * Customized */ customized?: pulumi.Input; /** * Enabled */ enabled?: pulumi.Input; /** * Guaranteed ratio */ guaranteedRatio?: pulumi.Input; /** * Profile */ profile?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4 { /** * Multicast */ multicast?: pulumi.Input; /** * Unicast */ unicast?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4Multicast { /** * Add path */ addPath?: pulumi.Input; /** * Allowas in */ allowasIn?: pulumi.Input; /** * Override ASNs in outbound updates if AS-Path equals Remote-AS? */ asOverride?: pulumi.Input; /** * Originate default route? */ defaultOriginate?: pulumi.Input; /** * Default originate route map */ defaultOriginateMap?: pulumi.Input; /** * Enable? */ enable?: pulumi.Input; /** * Maximum prefix */ maximumPrefix?: pulumi.Input; /** * Next hop */ nextHop?: pulumi.Input; /** * Orf */ orf?: pulumi.Input; /** * Remove private a s */ removePrivateAs?: pulumi.Input; /** * Route reflector client? */ routeReflectorClient?: pulumi.Input; /** * Send community */ sendCommunity?: pulumi.Input; /** * Soft reconfiguration of peer with stored routes? */ softReconfigWithStoredInfo?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastAddPath { /** * Advertise all paths to peer? */ txAllPaths?: pulumi.Input; /** * Tx bestpath per a s */ txBestpathPerAs?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastAllowasIn { /** * Number of times the firewalls own AS can be in an AS_PATH */ occurrence?: pulumi.Input; /** * Origin * * > ℹ️ **Note:** You must specify exactly one of `occurrence` and `origin`. */ origin?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastAllowasInOrigin { } export interface BgpAddressFamilyProfileIpv4MulticastMaximumPrefix { /** * Action */ action?: pulumi.Input; /** * Maximum number of prefixes */ numPrefixes?: pulumi.Input; /** * Threshold percentage of the maximum number of prefixes */ threshold?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastMaximumPrefixAction { /** * Restart */ restart?: pulumi.Input; /** * Warning only * * > ℹ️ **Note:** You must specify exactly one of `restart` and `warningOnly`. */ warningOnly?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastMaximumPrefixActionRestart { /** * Restart interval */ interval?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastMaximumPrefixActionWarningOnly { } export interface BgpAddressFamilyProfileIpv4MulticastNextHop { /** * Self */ self?: pulumi.Input; /** * Self force * * > ℹ️ **Note:** You must specify exactly one of `self` and `selfForce`. */ selfForce?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastNextHopSelf { } export interface BgpAddressFamilyProfileIpv4MulticastNextHopSelfForce { } export interface BgpAddressFamilyProfileIpv4MulticastOrf { /** * ORF prefix list */ orfPrefixList?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastRemovePrivateAs { /** * All */ all?: pulumi.Input; /** * Replace a s */ replaceAs?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastRemovePrivateAsAll { } export interface BgpAddressFamilyProfileIpv4MulticastRemovePrivateAsReplaceAs { } export interface BgpAddressFamilyProfileIpv4MulticastSendCommunity { /** * All */ all?: pulumi.Input; /** * Both * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ both?: pulumi.Input; /** * Extended * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ extended?: pulumi.Input; /** * Large * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ large?: pulumi.Input; /** * Standard * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ standard?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4MulticastSendCommunityAll { } export interface BgpAddressFamilyProfileIpv4MulticastSendCommunityBoth { } export interface BgpAddressFamilyProfileIpv4MulticastSendCommunityExtended { } export interface BgpAddressFamilyProfileIpv4MulticastSendCommunityLarge { } export interface BgpAddressFamilyProfileIpv4MulticastSendCommunityStandard { } export interface BgpAddressFamilyProfileIpv4Unicast { /** * Add path */ addPath?: pulumi.Input; /** * Allowas in */ allowasIn?: pulumi.Input; /** * Override ASNs in outbound updates if AS-Path equals Remote-AS? */ asOverride?: pulumi.Input; /** * Originate default route? */ defaultOriginate?: pulumi.Input; /** * Default originate route map */ defaultOriginateMap?: pulumi.Input; /** * Enable? */ enable?: pulumi.Input; /** * Maximum prefix */ maximumPrefix?: pulumi.Input; /** * Next hop */ nextHop?: pulumi.Input; /** * Orf */ orf?: pulumi.Input; /** * Remove private a s */ removePrivateAs?: pulumi.Input; /** * Route reflector client? */ routeReflectorClient?: pulumi.Input; /** * Send community */ sendCommunity?: pulumi.Input; /** * Soft reconfiguration of peer with stored routes? */ softReconfigWithStoredInfo?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastAddPath { /** * Advertise all paths to peer? */ txAllPaths?: pulumi.Input; /** * Tx bestpath per a s */ txBestpathPerAs?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastAllowasIn { /** * Number of times the firewalls own AS can be in an AS_PATH */ occurrence?: pulumi.Input; /** * Origin * * > ℹ️ **Note:** You must specify exactly one of `occurrence` and `origin`. */ origin?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastAllowasInOrigin { } export interface BgpAddressFamilyProfileIpv4UnicastMaximumPrefix { /** * Action */ action?: pulumi.Input; /** * Maximum number of prefixes */ numPrefixes?: pulumi.Input; /** * Threshold percentage of the maximum number of prefixes */ threshold?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastMaximumPrefixAction { /** * Restart */ restart?: pulumi.Input; /** * Warning only * * > ℹ️ **Note:** You must specify exactly one of `restart` and `warningOnly`. */ warningOnly?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastMaximumPrefixActionRestart { /** * Restart interval */ interval?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastMaximumPrefixActionWarningOnly { } export interface BgpAddressFamilyProfileIpv4UnicastNextHop { /** * Self */ self?: pulumi.Input; /** * Self force * * > ℹ️ **Note:** You must specify exactly one of `self` and `selfForce`. */ selfForce?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastNextHopSelf { } export interface BgpAddressFamilyProfileIpv4UnicastNextHopSelfForce { } export interface BgpAddressFamilyProfileIpv4UnicastOrf { /** * ORF prefix list */ orfPrefixList?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastRemovePrivateAs { /** * All */ all?: pulumi.Input; /** * Replace a s */ replaceAs?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastRemovePrivateAsAll { } export interface BgpAddressFamilyProfileIpv4UnicastRemovePrivateAsReplaceAs { } export interface BgpAddressFamilyProfileIpv4UnicastSendCommunity { /** * All */ all?: pulumi.Input; /** * Both * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ both?: pulumi.Input; /** * Extended * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ extended?: pulumi.Input; /** * Large * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ large?: pulumi.Input; /** * Standard * * > ℹ️ **Note:** You must specify exactly one of `all`, `both`, `extended`, `large`, and `standard`. */ standard?: pulumi.Input; } export interface BgpAddressFamilyProfileIpv4UnicastSendCommunityAll { } export interface BgpAddressFamilyProfileIpv4UnicastSendCommunityBoth { } export interface BgpAddressFamilyProfileIpv4UnicastSendCommunityExtended { } export interface BgpAddressFamilyProfileIpv4UnicastSendCommunityLarge { } export interface BgpAddressFamilyProfileIpv4UnicastSendCommunityStandard { } export interface BgpFilteringProfileIpv4 { /** * Multicast */ multicast?: pulumi.Input; /** * Unicast */ unicast?: pulumi.Input; } export interface BgpFilteringProfileIpv4Multicast { /** * Conditional advertisement */ conditionalAdvertisement?: pulumi.Input; /** * Filter list */ filterList?: pulumi.Input; /** * Inbound network filters */ inboundNetworkFilters?: pulumi.Input; /** * Inherit from unicast */ inherit?: pulumi.Input; /** * Outbound network filters */ outboundNetworkFilters?: pulumi.Input; /** * Route maps */ routeMaps?: pulumi.Input; /** * Unsuppress map */ unsuppressMap?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastConditionalAdvertisement { /** * Exist */ exist?: pulumi.Input; /** * Non exist */ nonExist?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastConditionalAdvertisementExist { /** * Advertise map */ advertiseMap?: pulumi.Input; /** * Exist map */ existMap?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastConditionalAdvertisementNonExist { /** * Advertise map */ advertiseMap?: pulumi.Input; /** * Non exist map */ nonExistMap?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastFilterList { /** * Inbound */ inbound?: pulumi.Input; /** * Outbound */ outbound?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastInboundNetworkFilters { /** * Distribute list */ distributeList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastOutboundNetworkFilters { /** * Distribute list */ distributeList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpFilteringProfileIpv4MulticastRouteMaps { /** * Inbound */ inbound?: pulumi.Input; /** * Outbound */ outbound?: pulumi.Input; } export interface BgpFilteringProfileIpv4Unicast { /** * Conditional advertisement */ conditionalAdvertisement?: pulumi.Input; /** * Filter list */ filterList?: pulumi.Input; /** * Inbound network filters */ inboundNetworkFilters?: pulumi.Input; /** * Outbound network filters */ outboundNetworkFilters?: pulumi.Input; /** * Route maps */ routeMaps?: pulumi.Input; /** * Unsuppress map */ unsuppressMap?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastConditionalAdvertisement { /** * Exist */ exist?: pulumi.Input; /** * Non exist */ nonExist?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastConditionalAdvertisementExist { /** * Advertise map */ advertiseMap?: pulumi.Input; /** * Exist map */ existMap?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastConditionalAdvertisementNonExist { /** * Advertise map */ advertiseMap?: pulumi.Input; /** * Non exist map */ nonExistMap?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastFilterList { /** * Inbound */ inbound?: pulumi.Input; /** * Outbound */ outbound?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastInboundNetworkFilters { /** * Distribute list */ distributeList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastOutboundNetworkFilters { /** * Distribute list */ distributeList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpFilteringProfileIpv4UnicastRouteMaps { /** * Inbound */ inbound?: pulumi.Input; /** * Outbound */ outbound?: pulumi.Input; } export interface BgpRedistributionProfileIpv4 { /** * Unicast */ unicast?: pulumi.Input; } export interface BgpRedistributionProfileIpv4Unicast { /** * Connected */ connected?: pulumi.Input; /** * Ospf */ ospf?: pulumi.Input; /** * Static */ static?: pulumi.Input; } export interface BgpRedistributionProfileIpv4UnicastConnected { /** * Enable connected route redistribution? */ enable?: pulumi.Input; /** * Route metric */ metric?: pulumi.Input; /** * Route map */ routeMap?: pulumi.Input; } export interface BgpRedistributionProfileIpv4UnicastOspf { /** * Enable OSPF route redistribution? */ enable?: pulumi.Input; /** * Route metric */ metric?: pulumi.Input; /** * Route map */ routeMap?: pulumi.Input; } export interface BgpRedistributionProfileIpv4UnicastStatic { /** * Enable static route redistribution? */ enable?: pulumi.Input; /** * Route metric */ metric?: pulumi.Input; /** * Route map */ routeMap?: pulumi.Input; } export interface BgpRouteMapRedistributionBgp { /** * Ospf */ ospf?: pulumi.Input; /** * BGP Root RIB * * > ℹ️ **Note:** You must specify exactly one of `ospf` and `rib`. */ rib?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspf { /** * BGP Root OSPF Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionBgpOspfRouteMap { /** * BGP Root OSPF Route maps Action */ action?: pulumi.Input; /** * BGP Root OSPF Route maps Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * BGP Root OSPF Route maps Sequence number */ name?: pulumi.Input; /** * BGP Root OSPF Set */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapMatch { /** * BGP Root OSPF Route maps match AS path access list */ asPathAccessList?: pulumi.Input; /** * EBGP Root OSPF Route maps match xtended community */ extendedCommunity?: pulumi.Input; /** * BGP Root OSPF Route maps match Interface */ interface?: pulumi.Input; /** * BGP Root OSPF Route maps match bgp-route-map-redistributions ipv4 object */ ipv4?: pulumi.Input; /** * BGP Root OSPF Route maps match Large community */ largeCommunity?: pulumi.Input; /** * BGP Root OSPF Route maps match Local preference */ localPreference?: pulumi.Input; /** * BGP Root OSPF Route maps match Metric */ metric?: pulumi.Input; /** * BGP Root OSPF Route maps match Origin */ origin?: pulumi.Input; /** * BGP Root OSPF Route maps match Peer */ peer?: pulumi.Input; /** * BGP Root OSPF Route maps match Regular community */ regularCommunity?: pulumi.Input; /** * BGP Root OSPF Route maps match Tag */ tag?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapMatchIpv4 { /** * BGP Root OSPF Route maps match bgp-route-map-redistributions ipv4 object address */ address?: pulumi.Input; /** * BGP Root OSPF Route maps match bgp-route-map-redistributions ipv4 object next*hop */ nextHop?: pulumi.Input; /** * BGP Root OSPF Route maps ipv4 bgp-route-map-redistributions ipv4 object route*source */ routeSource?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapMatchIpv4Address { /** * BGP Root OSPF Route maps match ipv4 Access list */ accessList?: pulumi.Input; /** * BGP Root OSPF Route maps match ipv4 Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapMatchIpv4NextHop { /** * BGP Root OSPF Route maps ipv4 nextVr hop Access list */ accessList?: pulumi.Input; /** * BGP Root OSPF Route maps ipv4 next hop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapMatchIpv4RouteSource { /** * BGP Root OSPF Route maps ipv4 route source Access list */ accessList?: pulumi.Input; /** * BGP Root OSPF Route maps ipv4 route source Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapSet { /** * Metric */ metric?: pulumi.Input; /** * BGP Root OSPF Route maps set Metric type */ metricType?: pulumi.Input; /** * BGP Root OSPF Route maps set Tag */ tag?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpOspfRouteMapSetMetric { /** * BGP Root OSPF Route maps set Metric action */ action?: pulumi.Input; /** * BGP Root OSPF Route maps set Metric value */ value?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRib { /** * BGP Root RIB Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionBgpRibRouteMap { /** * BGP Root RIB Route maps Action */ action?: pulumi.Input; /** * BGP Root RIB Route maps Description */ description?: pulumi.Input; /** * match attribute for BG Rib route map */ match?: pulumi.Input; /** * BGP Root RIB Route maps Sequence number */ name?: pulumi.Input; /** * Set attributes for BGP route map */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRibRouteMapMatch { /** * BGP Root RIB Route maps match AS path access list */ asPathAccessList?: pulumi.Input; /** * BGP Root RIB Route maps match Extended community */ extendedCommunity?: pulumi.Input; /** * BGP Root RIB Route maps match Interface */ interface?: pulumi.Input; /** * BGP Route Map Redistributions Root BGP rib Route Map IPv4 */ ipv4?: pulumi.Input; /** * BGP Root RIB Route maps match Large community */ largeCommunity?: pulumi.Input; /** * BGP Root RIB Route maps match Local preference */ localPreference?: pulumi.Input; /** * BGP Root RIB Route maps match Metric */ metric?: pulumi.Input; /** * BGP Root RIB Route maps match Origin */ origin?: pulumi.Input; /** * BGP Root RIB Route maps match Peer */ peer?: pulumi.Input; /** * BGP Root RIB Route maps match Regular community */ regularCommunity?: pulumi.Input; /** * BGP Root RIB Route maps match Tag */ tag?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRibRouteMapMatchIpv4 { /** * bgp-route-map-redistributions ipv4 rib object address */ address?: pulumi.Input; /** * bgp-route-map-redistributions ipv4 rib object next*hop */ nextHop?: pulumi.Input; /** * Route source */ routeSource?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRibRouteMapMatchIpv4Address { /** * BGP Root RIB Route maps match ipv Access list */ accessList?: pulumi.Input; /** * BGP Root RIB Route maps match ipv Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRibRouteMapMatchIpv4NextHop { /** * BGP Root RIB Route maps match ipv next hop Access list */ accessList?: pulumi.Input; /** * BGP Root RIB Route maps match ipv next hop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRibRouteMapMatchIpv4RouteSource { /** * BGP Root RIB Route maps match ipv route source Access list */ accessList?: pulumi.Input; /** * BGP Root RIB Route maps match ipv route source Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionBgpRibRouteMapSet { /** * BGP Root RIB Route maps set Source address */ sourceAddress?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStatic { /** * Connected Static Root BGP */ bgp?: pulumi.Input; /** * Ospf * * > ℹ️ **Note:** You must specify exactly one of `bgp`, `ospf`, and `rib`. */ ospf?: pulumi.Input; /** * Rib * * > ℹ️ **Note:** You must specify exactly one of `bgp`, `ospf`, and `rib`. */ rib?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgp { /** * Connected Static BGP Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMap { /** * Connected Static BGP Route maps Action */ action?: pulumi.Input; /** * Connected Static BGP Route maps Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Connected Static BGP Route maps Sequence number */ name?: pulumi.Input; /** * Set */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapMatch { /** * Connected Static BGP Route maps match Interface */ interface?: pulumi.Input; /** * bgp-route-map-redistributions connected-static ipv4 */ ipv4?: pulumi.Input; /** * Connected Static BGP Route maps match Metric */ metric?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapMatchIpv4 { /** * Address */ address?: pulumi.Input; /** * Next hop */ nextHop?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapMatchIpv4Address { /** * Connected Static BGP Route maps match ip4 Access list */ accessList?: pulumi.Input; /** * Connected Static BGP Route maps match ip4 Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapMatchIpv4NextHop { /** * Connected Static BGP Route maps match ip4 next hop Access list */ accessList?: pulumi.Input; /** * Connected Static BGP Route maps match ip4 next hop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapSet { /** * bgp-route-map-redistributions connected*static aggregator */ aggregator?: pulumi.Input; /** * Connected Static BGP Route maps set AS numbers */ aspathPrepends?: pulumi.Input[] | undefined>; /** * Connected Static BGP Route maps set Enable BGP atomic aggregate? */ atomicAggregate?: pulumi.Input; /** * Ipv4 */ ipv4?: pulumi.Input; /** * Connected Static BGP Route maps set Large communities */ largeCommunities?: pulumi.Input[] | undefined>; /** * Connected Static BGP Route maps set Local preference */ localPreference?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Connected Static BGP Route maps set Origin */ origin?: pulumi.Input; /** * Connected Static BGP Route maps set Originator ID */ originatorId?: pulumi.Input; /** * Connected Static BGP Route maps set Regular communities */ regularCommunities?: pulumi.Input[] | undefined>; /** * Connected Static BGP Route maps set Tag */ tag?: pulumi.Input; /** * Connected Static BGP Route maps set Weight */ weight?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapSetAggregator { /** * Connected Static BGP Route maps set Aggregator AS */ as?: pulumi.Input; /** * Connected Static BGP Route maps set Router ID */ routerId?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapSetIpv4 { /** * Connected Static BGP Route maps set Next ipv4 hop */ nextHop?: pulumi.Input; /** * Connected Static BGP Route maps set ipv4 Source address */ sourceAddress?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticBgpRouteMapSetMetric { /** * Connected Static BGP Route maps set Metric action */ action?: pulumi.Input; /** * Connected Static BGP Route maps set Metric value */ value?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspf { /** * Connected Static BGP OSPF Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMap { /** * Connected Static BGP OSPF Route map Action */ action?: pulumi.Input; /** * Connected Static BGP OSPF Route map Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Connected Static BGP OSPF Route map Sequence number */ name?: pulumi.Input; /** * Connected Static Root OSPF Set */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMapMatch { /** * Connected Static BGP OSPF Route map Interface */ interface?: pulumi.Input; /** * bgp-route-map-redistributions connected-static match ipv4 */ ipv4?: pulumi.Input; /** * Connected Static BGP OSPF Route map Metric */ metric?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMapMatchIpv4 { /** * Connected Static Root OSPF Address */ address?: pulumi.Input; /** * Next hop */ nextHop?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMapMatchIpv4Address { /** * Connected Static BGP OSPF Route map ipv4 Access list */ accessList?: pulumi.Input; /** * Connected Static BGP OSPF Route map ipv4 Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMapMatchIpv4NextHop { /** * Connected Static BGP OSPF Route map ipv4 next hop Access list */ accessList?: pulumi.Input; /** * Connected Static BGP OSPF Route map ipv4 next hop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMapSet { /** * Metric */ metric?: pulumi.Input; /** * Connected Static BGP OSPF Route map set Metric type */ metricType?: pulumi.Input; /** * Connected Static BGP OSPF Route map set Tag */ tag?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticOspfRouteMapSetMetric { /** * Connected Static BGP OSPF Route map set Metric action */ action?: pulumi.Input; /** * Connected Static BGP OSPF Route map set Metric value */ value?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticRib { /** * Connected Static BGP Rib Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionConnectedStaticRibRouteMap { /** * Connected Static BGP Rib Route maps Action */ action?: pulumi.Input; /** * Connected Static BGP Rib Route maps Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Connected Static BGP Rib Route maps Sequence number */ name?: pulumi.Input; /** * Connected Static Root RIB set */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticRibRouteMapMatch { /** * Connected Static BGP Rib Route maps Interface */ interface?: pulumi.Input; /** * Ipv4 */ ipv4?: pulumi.Input; /** * Connected Static BGP Rib Route maps Metric */ metric?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticRibRouteMapMatchIpv4 { /** * Connected Static BGP Rib Route maps ipv4 address */ address?: pulumi.Input; /** * Next hop */ nextHop?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticRibRouteMapMatchIpv4Address { /** * Connected Static BGP Rib Route maps ipv4 Access list */ accessList?: pulumi.Input; /** * Connected Static BGP Rib Route maps ipv4 Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticRibRouteMapMatchIpv4NextHop { /** * Connected Static BGP Rib Route maps ipv4 nect hop Access list */ accessList?: pulumi.Input; /** * Connected Static BGP Rib Route maps ipv4 next hop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionConnectedStaticRibRouteMapSet { /** * Connected Static BGP Rib Route Map Distribution Source address */ sourceAddress?: pulumi.Input; } export interface BgpRouteMapRedistributionOspf { /** * OSPF Root BGP */ bgp?: pulumi.Input; /** * Rib * * > ℹ️ **Note:** You must specify exactly one of `bgp` and `rib`. */ rib?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgp { /** * OSPF BGP Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionOspfBgpRouteMap { /** * OSPF BGP Route maps Action */ action?: pulumi.Input; /** * OSPF BGP Route maps Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * OSPF BGP Route maps Sequence number */ name?: pulumi.Input; /** * OSPF Root Set */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapMatch { /** * bgp-route-map-redistributions ospf address */ address?: pulumi.Input; /** * OSPF BGP Route maps Interface */ interface?: pulumi.Input; /** * OSPF BGP Route maps Metric */ metric?: pulumi.Input; /** * bgp-route-map-redistributions ospf next*hop */ nextHop?: pulumi.Input; /** * OSPF BGP Route maps Tag */ tag?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapMatchAddress { /** * OSPF BGP Route maps match Access list */ accessList?: pulumi.Input; /** * OSPF BGP Route maps match Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapMatchNextHop { /** * OSPF BGP Route maps nextHop Access list */ accessList?: pulumi.Input; /** * OSPF BGP Route maps nextHop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapSet { /** * bgp-route-map-redistributions set aggregator */ aggregator?: pulumi.Input; /** * OSPF BGP Route maps set AS numbers */ aspathPrepends?: pulumi.Input[] | undefined>; /** * OSPF BGP Route maps set Enable BGP atomic aggregate? */ atomicAggregate?: pulumi.Input; /** * Ipv4 */ ipv4?: pulumi.Input; /** * OSPF BGP Route maps set Large communities */ largeCommunities?: pulumi.Input[] | undefined>; /** * OSPF BGP Route maps set Local preference */ localPreference?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * OSPF BGP Route maps set Origin */ origin?: pulumi.Input; /** * OSPF BGP Route maps set Originator ID */ originatorId?: pulumi.Input; /** * OSPF BGP Route maps set Regular communities */ regularCommunities?: pulumi.Input[] | undefined>; /** * OSPF BGP Route maps set Tag */ tag?: pulumi.Input; /** * OSPF BGP Route maps set Weight */ weight?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapSetAggregator { /** * OSPF BGP Route maps set Aggregator AS */ as?: pulumi.Input; /** * OSPF BGP Route maps set Router ID */ routerId?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapSetIpv4 { /** * OSPF BGP Route maps set ipv4 Next hop */ nextHop?: pulumi.Input; /** * OSPF BGP Route maps set ipv4 Source address */ sourceAddress?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfBgpRouteMapSetMetric { /** * OSPF BGP Route maps set Metric action */ action?: pulumi.Input; /** * OSPF BGP Route maps set Metric value */ value?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfRib { /** * OSPF RIB Route maps set Route maps */ routeMaps?: pulumi.Input[] | undefined>; } export interface BgpRouteMapRedistributionOspfRibRouteMap { /** * OSPF RIB Route maps Action */ action?: pulumi.Input; /** * OSPF RIB Route maps Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * OSPF RIB Route mapsSequence number */ name?: pulumi.Input; /** * OSPF RIB Route maps set */ set?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfRibRouteMapMatch { /** * OSPF RIB Route maps address */ address?: pulumi.Input; /** * OSPF RIB Route maps Interface */ interface?: pulumi.Input; /** * OSPF RIB Route maps Metric */ metric?: pulumi.Input; /** * OSPF RIB Route maps next*hop */ nextHop?: pulumi.Input; /** * OSPF RIB Route maps tag */ tag?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfRibRouteMapMatchAddress { /** * OSPF RIB Route maps address Access list */ accessList?: pulumi.Input; /** * OSPF RIB Route maps address Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfRibRouteMapMatchNextHop { /** * OSPF RIB Route maps nextHop Access list */ accessList?: pulumi.Input; /** * OSPF RIB Route maps nextHop Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRedistributionOspfRibRouteMapSet { /** * OSPF RIB Route maps set Source address */ sourceAddress?: pulumi.Input; } export interface BgpRouteMapRouteMap { /** * Action */ action?: pulumi.Input; /** * Description */ description?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Sequence number */ name?: pulumi.Input; /** * Set */ set?: pulumi.Input; } export interface BgpRouteMapRouteMapMatch { /** * AS path access list */ asPathAccessList?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * bgp-route-maps ipv4 object */ ipv4?: pulumi.Input; /** * Large community */ largeCommunity?: pulumi.Input; /** * Local preference */ localPreference?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Origin */ origin?: pulumi.Input; /** * Peer */ peer?: pulumi.Input; /** * Regular community */ regularCommunity?: pulumi.Input; /** * Tag */ tag?: pulumi.Input; } export interface BgpRouteMapRouteMapMatchIpv4 { /** * Address */ address?: pulumi.Input; /** * Next hop */ nextHop?: pulumi.Input; /** * Route source */ routeSource?: pulumi.Input; } export interface BgpRouteMapRouteMapMatchIpv4Address { /** * Access list */ accessList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRouteMapMatchIpv4NextHop { /** * Access list */ accessList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRouteMapMatchIpv4RouteSource { /** * Access list */ accessList?: pulumi.Input; /** * Prefix list */ prefixList?: pulumi.Input; } export interface BgpRouteMapRouteMapSet { /** * bgp-route-maps aggregator */ aggregator?: pulumi.Input; /** * Aspath exclude */ aspathExcludes?: pulumi.Input[] | undefined>; /** * Aspath prepend */ aspathPrepends?: pulumi.Input[] | undefined>; /** * Enable BGP atomic aggregate? */ atomicAggregate?: pulumi.Input; /** * Ipv4 */ ipv4?: pulumi.Input; /** * Large community */ largeCommunities?: pulumi.Input[] | undefined>; /** * Local preference */ localPreference?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Origin */ origin?: pulumi.Input; /** * Originator ID */ originatorId?: pulumi.Input; /** * Overwrite large community? */ overwriteLargeCommunity?: pulumi.Input; /** * Overwrite regular community? */ overwriteRegularCommunity?: pulumi.Input; /** * Regular community */ regularCommunities?: pulumi.Input[] | undefined>; /** * Remove large community name */ removeLargeCommunity?: pulumi.Input; /** * Remove regular community name */ removeRegularCommunity?: pulumi.Input; /** * Tag */ tag?: pulumi.Input; /** * Weight */ weight?: pulumi.Input; } export interface BgpRouteMapRouteMapSetAggregator { /** * Aggregator AS */ as?: pulumi.Input; /** * Router ID */ routerId?: pulumi.Input; } export interface BgpRouteMapRouteMapSetIpv4 { /** * Next hop */ nextHop?: pulumi.Input; /** * Source address */ sourceAddress?: pulumi.Input; } export interface BgpRouteMapRouteMapSetMetric { /** * Metric action */ action?: pulumi.Input; /** * Metric value */ value?: pulumi.Input; } export interface BgpRoutingRoutingPreference { /** * Default */ default?: pulumi.Input; /** * Hot potato routing * * > ℹ️ **Note:** You must specify exactly one of `default` and `hotPotatoRouting`. */ hotPotatoRouting?: pulumi.Input; } export interface BgpRoutingRoutingPreferenceDefault { } export interface BgpRoutingRoutingPreferenceHotPotatoRouting { } export interface CertificateProfileCaCertificate { /** * Default OCSP URL */ defaultOcspUrl?: pulumi.Input; /** * CA certificate name */ name: pulumi.Input; /** * OCSP verify certificate */ ocspVerifyCert?: pulumi.Input; /** * Template name/OID */ templateName?: pulumi.Input; } export interface CertificateProfileUsernameField { /** * Common name */ subject?: pulumi.Input; /** * Email address */ subjectAlt?: pulumi.Input; } export interface ContentIdSettingContentId { /** * Allow forward decrypted content */ allowForwardDecryptedContent?: pulumi.Input; /** * Allow http range */ allowHttpRange?: pulumi.Input; /** * Application */ application?: pulumi.Input; /** * Extended capture segment */ extendedCaptureSegment?: pulumi.Input; /** * Strip x fwd for */ stripXFwdFor?: pulumi.Input; /** * Tcp bypass exceed queue */ tcpBypassExceedQueue?: pulumi.Input; /** * Udp bypass exceed queue */ udpBypassExceedQueue?: pulumi.Input; /** * X forwarded for */ xForwardedFor?: pulumi.Input; } export interface ContentIdSettingContentIdApplication { /** * Bypass exceed queue */ bypassExceedQueue?: pulumi.Input; } export interface DataFilteringProfileRule { /** * Alert threshold */ alertThreshold?: pulumi.Input; /** * Application */ applications?: pulumi.Input[] | undefined>; /** * Block threshold */ blockThreshold?: pulumi.Input; /** * Data object */ dataObject?: pulumi.Input; /** * Direction */ direction?: pulumi.Input; /** * File type */ fileTypes?: pulumi.Input[] | undefined>; /** * Log severity */ logSeverity?: pulumi.Input; /** * Name */ name?: pulumi.Input; } export interface DataObjectPatternType { /** * File properties */ fileProperties?: pulumi.Input; /** * Predefined */ predefined?: pulumi.Input; /** * Regex */ regex?: pulumi.Input; } export interface DataObjectPatternTypeFileProperties { /** * Pattern */ patterns?: pulumi.Input[] | undefined>; } export interface DataObjectPatternTypeFilePropertiesPattern { /** * File property */ fileProperty?: pulumi.Input; /** * File type */ fileType?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * Property value */ propertyValue?: pulumi.Input; } export interface DataObjectPatternTypePredefined { /** * Pattern */ patterns?: pulumi.Input[] | undefined>; } export interface DataObjectPatternTypePredefinedPattern { /** * File type */ fileTypes?: pulumi.Input[] | undefined>; /** * Name */ name?: pulumi.Input; } export interface DataObjectPatternTypeRegex { /** * Pattern */ patterns?: pulumi.Input[] | undefined>; } export interface DataObjectPatternTypeRegexPattern { /** * File type */ fileTypes?: pulumi.Input[] | undefined>; /** * Name */ name?: pulumi.Input; /** * Regex */ regex?: pulumi.Input; } export interface DecryptionProfileSslForwardProxy { /** * Auto include altname */ autoIncludeAltname?: pulumi.Input; /** * Block client cert */ blockClientCert?: pulumi.Input; /** * Block expired certificate */ blockExpiredCertificate?: pulumi.Input; /** * Block timeout cert */ blockTimeoutCert?: pulumi.Input; /** * Block tls13 downgrade no resource */ blockTls13DowngradeNoResource?: pulumi.Input; /** * Block unknown cert */ blockUnknownCert?: pulumi.Input; /** * Block unsupported cipher */ blockUnsupportedCipher?: pulumi.Input; /** * Block unsupported version */ blockUnsupportedVersion?: pulumi.Input; /** * Block untrusted issuer */ blockUntrustedIssuer?: pulumi.Input; /** * Restrict cert exts */ restrictCertExts?: pulumi.Input; /** * Strip alpn */ stripAlpn?: pulumi.Input; } export interface DecryptionProfileSslInboundProxy { /** * Block if hsm unavailable */ blockIfHsmUnavailable?: pulumi.Input; /** * Block if no resource */ blockIfNoResource?: pulumi.Input; /** * Block unsupported cipher */ blockUnsupportedCipher?: pulumi.Input; /** * Block unsupported version */ blockUnsupportedVersion?: pulumi.Input; } export interface DecryptionProfileSslNoProxy { /** * Block expired certificate */ blockExpiredCertificate?: pulumi.Input; /** * Block untrusted issuer */ blockUntrustedIssuer?: pulumi.Input; } export interface DecryptionProfileSslProtocolSettings { /** * Auth algo md5 */ authAlgoMd5?: pulumi.Input; /** * Auth algo sha1 */ authAlgoSha1?: pulumi.Input; /** * Auth algo sha256 */ authAlgoSha256?: pulumi.Input; /** * Auth algo sha384 */ authAlgoSha384?: pulumi.Input; /** * Enc algo3des */ encAlgo3des?: pulumi.Input; /** * Enc algo aes128 cbc */ encAlgoAes128Cbc?: pulumi.Input; /** * Enc algo aes128 gcm */ encAlgoAes128Gcm?: pulumi.Input; /** * Enc algo aes256 cbc */ encAlgoAes256Cbc?: pulumi.Input; /** * Enc algo aes256 gcm */ encAlgoAes256Gcm?: pulumi.Input; /** * Enc algo chacha20 poly1305 */ encAlgoChacha20Poly1305?: pulumi.Input; /** * Enc algo rc4 */ encAlgoRc4?: pulumi.Input; /** * Keyxchg algo dhe */ keyxchgAlgoDhe?: pulumi.Input; /** * Keyxchg algo ecdhe */ keyxchgAlgoEcdhe?: pulumi.Input; /** * Keyxchg algo rsa */ keyxchgAlgoRsa?: pulumi.Input; /** * Max version */ maxVersion?: pulumi.Input; /** * Min version */ minVersion?: pulumi.Input; } export interface DecryptionRuleType { /** * Ssl forward proxy */ sslForwardProxy?: pulumi.Input; /** * add the certificate name for SSL inbound inspection * * > ℹ️ **Note:** You must specify exactly one of `sslForwardProxy` and `sslInboundInspection`. */ sslInboundInspection?: pulumi.Input; } export interface DecryptionRuleTypeSslForwardProxy { } export interface DecryptionRuleTypeSslInboundInspection { /** * List of certificate names for SSL inbound inspection */ certificates?: pulumi.Input[] | undefined>; } export interface DeviceRedistributionCollectorRedistributionCollector { /** * User-ID collector interface */ interface?: pulumi.Input; } export interface DhcpInterfaceRelay { /** * Ip */ ip: pulumi.Input; } export interface DhcpInterfaceRelayIp { /** * Enabled? */ enabled: pulumi.Input; /** * Server */ servers: pulumi.Input[]>; } export interface DhcpInterfaceServer { /** * List of IP address pools */ ipPools?: pulumi.Input[] | undefined>; /** * DHCP server mode */ mode?: pulumi.Input; /** * Option */ option?: pulumi.Input; /** * Ping IP before allocating? */ probeIp?: pulumi.Input; /** * List of IP reservations */ reserveds?: pulumi.Input[] | undefined>; } export interface DhcpInterfaceServerOption { /** * Dns */ dns?: pulumi.Input; /** * DNS suffix */ dnsSuffix?: pulumi.Input; /** * Default gateway */ gateway?: pulumi.Input; /** * Inheritance */ inheritance?: pulumi.Input; /** * Lease */ lease?: pulumi.Input; /** * Nis */ nis?: pulumi.Input; /** * Ntp */ ntp?: pulumi.Input; /** * POP3 server */ pop3Server?: pulumi.Input; /** * SMTP server */ smtpServer?: pulumi.Input; /** * Subnet mask */ subnetMask?: pulumi.Input; /** * Custom DHCP options */ userDefineds?: pulumi.Input[] | undefined>; /** * Wins */ wins?: pulumi.Input; } export interface DhcpInterfaceServerOptionDns { /** * Primary DNS server */ primary?: pulumi.Input; /** * Secondary DNS server */ secondary?: pulumi.Input; } export interface DhcpInterfaceServerOptionInheritance { /** * Interface from which to inherit lease options */ source?: pulumi.Input; } export interface DhcpInterfaceServerOptionLease { /** * DHCP lease timeout (minutes) */ timeout?: pulumi.Input; /** * Unlimited * * > ℹ️ **Note:** You must specify exactly one of `timeout` and `unlimited`. */ unlimited?: pulumi.Input; } export interface DhcpInterfaceServerOptionLeaseUnlimited { } export interface DhcpInterfaceServerOptionNis { /** * Primary NIS server */ primary?: pulumi.Input; /** * Secondary NIS server */ secondary?: pulumi.Input; } export interface DhcpInterfaceServerOptionNtp { /** * Primary NTP server */ primary?: pulumi.Input; /** * Secondary NTP server */ secondary?: pulumi.Input; } export interface DhcpInterfaceServerOptionUserDefined { /** * Ascii */ asciis?: pulumi.Input[] | undefined>; /** * Option code */ code?: pulumi.Input; /** * Hex */ hexes?: pulumi.Input[] | undefined>; /** * Inherited from DHCP server inheritance source? */ inherited: pulumi.Input; /** * Ip */ ips?: pulumi.Input[] | undefined>; /** * Option name */ name: pulumi.Input; } export interface DhcpInterfaceServerOptionWins { /** * Primary WINS server */ primary?: pulumi.Input; /** * Secondary WINS server */ secondary?: pulumi.Input; } export interface DhcpInterfaceServerReserved { /** * Reservation description */ description?: pulumi.Input; /** * Reserved MAC address */ mac?: pulumi.Input; /** * Reserved IP address */ name?: pulumi.Input; } export interface DnsProxyCache { /** * Cache EDNS UDP response */ cacheEdns?: pulumi.Input; /** * Turn on caching for this DNS object */ enabled: pulumi.Input; /** * Max ttl */ maxTtl?: pulumi.Input; } export interface DnsProxyCacheMaxTtl { /** * Enable max ttl for this DNS object */ enabled: pulumi.Input; /** * Time in seconds after which entry is cleared */ timeToLive?: pulumi.Input; } export interface DnsProxyDefault { /** * Inheritance */ inheritance?: pulumi.Input; /** * Primary DNS Name server IP address */ primary: pulumi.Input; /** * Secondary DNS Name server IP address */ secondary?: pulumi.Input; } export interface DnsProxyDefaultInheritance { /** * Dynamic interface */ source?: pulumi.Input; } export interface DnsProxyDomainServer { /** * Enable caching for this DNS proxy rule? */ cacheable?: pulumi.Input; /** * Domain names(s) that will be matched */ domainNames?: pulumi.Input[] | undefined>; /** * Proxy rule name */ name: pulumi.Input; /** * Primary DNS server IP address */ primary: pulumi.Input; /** * Secondary DNS server IP address */ secondary?: pulumi.Input; } export interface DnsProxyStaticEntry { /** * Address */ addresses: pulumi.Input[]>; /** * Fully qualified domain name */ domain: pulumi.Input; /** * Static entry name */ name: pulumi.Input; } export interface DnsProxyTcpQueries { /** * Turn on forwarding of TCP DNS queries? */ enabled: pulumi.Input; /** * Upper limit on number of concurrent TCP DNS requests */ maxPendingRequests?: pulumi.Input; } export interface DnsProxyUdpQueries { /** * Retries */ retries?: pulumi.Input; } export interface DnsProxyUdpQueriesRetries { /** * Maximum number of retries before trying next name server */ attempts?: pulumi.Input; /** * Time in seconds for another request to be sent */ interval?: pulumi.Input; } export interface DnsSecurityProfileBotnetDomains { /** * DNS categories */ dnsSecurityCategories?: pulumi.Input[] | undefined>; /** * Dynamic lists of DNS domains */ lists?: pulumi.Input[] | undefined>; /** * DNS sinkhole settings */ sinkhole?: pulumi.Input; /** * DNS security overrides */ whitelists?: pulumi.Input[] | undefined>; } export interface DnsSecurityProfileBotnetDomainsDnsSecurityCategory { /** * Action */ action?: pulumi.Input; /** * Log level */ logLevel?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * Packet capture */ packetCapture?: pulumi.Input; } export interface DnsSecurityProfileBotnetDomainsList { /** * Action */ action?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Packet capture */ packetCapture?: pulumi.Input; } export interface DnsSecurityProfileBotnetDomainsListAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `block`, and `sinkhole`. */ allow?: pulumi.Input; /** * Block * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `block`, and `sinkhole`. */ block?: pulumi.Input; /** * Sinkhole * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `block`, and `sinkhole`. */ sinkhole?: pulumi.Input; } export interface DnsSecurityProfileBotnetDomainsListActionAlert { } export interface DnsSecurityProfileBotnetDomainsListActionAllow { } export interface DnsSecurityProfileBotnetDomainsListActionBlock { } export interface DnsSecurityProfileBotnetDomainsListActionSinkhole { } export interface DnsSecurityProfileBotnetDomainsSinkhole { /** * Ipv4 address */ ipv4Address?: pulumi.Input; /** * Ipv6 address */ ipv6Address?: pulumi.Input; } export interface DnsSecurityProfileBotnetDomainsWhitelist { /** * Description */ description?: pulumi.Input; /** * DNS domain or FQDN to be whitelisted */ name: pulumi.Input; } export interface DosProtectionProfileFlood { /** * Icmp */ icmp?: pulumi.Input; /** * Icmpv6 */ icmpv6?: pulumi.Input; /** * Other ip */ otherIp?: pulumi.Input; /** * Tcp syn */ tcpSyn?: pulumi.Input; /** * Udp */ udp?: pulumi.Input; } export interface DosProtectionProfileFloodIcmp { /** * Enable */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface DosProtectionProfileFloodIcmpRed { /** * Activate rate */ activateRate?: pulumi.Input; /** * Alarm rate */ alarmRate?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Maximal rate */ maximalRate?: pulumi.Input; } export interface DosProtectionProfileFloodIcmpRedBlock { /** * Duration */ duration?: pulumi.Input; } export interface DosProtectionProfileFloodIcmpv6 { /** * Enable */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface DosProtectionProfileFloodIcmpv6Red { /** * Activate rate */ activateRate?: pulumi.Input; /** * Alarm rate */ alarmRate?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Maximal rate */ maximalRate?: pulumi.Input; } export interface DosProtectionProfileFloodIcmpv6RedBlock { /** * Duration */ duration?: pulumi.Input; } export interface DosProtectionProfileFloodOtherIp { /** * Enable */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface DosProtectionProfileFloodOtherIpRed { /** * Activate rate */ activateRate?: pulumi.Input; /** * Alarm rate */ alarmRate?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Maximal rate */ maximalRate?: pulumi.Input; } export interface DosProtectionProfileFloodOtherIpRedBlock { /** * Duration */ duration?: pulumi.Input; } export interface DosProtectionProfileFloodTcpSyn { /** * Enable */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; /** * Syn cookies */ synCookies?: pulumi.Input; } export interface DosProtectionProfileFloodTcpSynRed { /** * Activate rate */ activateRate?: pulumi.Input; /** * Alarm rate */ alarmRate?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Maximal rate */ maximalRate?: pulumi.Input; } export interface DosProtectionProfileFloodTcpSynRedBlock { /** * Duration */ duration?: pulumi.Input; } export interface DosProtectionProfileFloodTcpSynSynCookies { /** * Activate rate */ activateRate?: pulumi.Input; /** * Alarm rate */ alarmRate?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Maximal rate */ maximalRate?: pulumi.Input; } export interface DosProtectionProfileFloodTcpSynSynCookiesBlock { /** * Duration */ duration?: pulumi.Input; } export interface DosProtectionProfileFloodUdp { /** * Enable */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface DosProtectionProfileFloodUdpRed { /** * Activate rate */ activateRate?: pulumi.Input; /** * Alarm rate */ alarmRate?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Maximal rate */ maximalRate?: pulumi.Input; } export interface DosProtectionProfileFloodUdpRedBlock { /** * Duration */ duration?: pulumi.Input; } export interface DosProtectionProfileResource { /** * Sessions */ sessions?: pulumi.Input; } export interface DosProtectionProfileResourceSessions { /** * Enabled */ enabled?: pulumi.Input; /** * Max concurrent limit */ maxConcurrentLimit?: pulumi.Input; } export interface DosProtectionRuleAction { /** * Allow */ allow?: pulumi.Input; /** * Deny * * > ℹ️ **Note:** You must specify exactly one of `allow`, `deny`, and `protect`. */ deny?: pulumi.Input; /** * Protect * * > ℹ️ **Note:** You must specify exactly one of `allow`, `deny`, and `protect`. */ protect?: pulumi.Input; } export interface DosProtectionRuleActionAllow { } export interface DosProtectionRuleActionDeny { } export interface DosProtectionRuleActionProtect { } export interface DosProtectionRuleProtection { /** * Aggregate */ aggregate?: pulumi.Input; /** * Classified * * > ℹ️ **Note:** You must specify exactly one of `aggregate` and `classified`. */ classified?: pulumi.Input; } export interface DosProtectionRuleProtectionAggregate { /** * Aggregate DoS protection profile */ profile: pulumi.Input; } export interface DosProtectionRuleProtectionClassified { /** * Classification criteria */ classificationCriteria?: pulumi.Input; /** * Classified DoS protection profile */ profile: pulumi.Input; } export interface DosProtectionRuleProtectionClassifiedClassificationCriteria { /** * Address */ address?: pulumi.Input; } export interface EthernetInterfaceLayer2 { /** * LLDP Settings */ lldp?: pulumi.Input; /** * Name of Netflow Profile to assign to Interface */ netflowProfile?: pulumi.Input; /** * Assign interface to VLAN tag */ vlanTag?: pulumi.Input; } export interface EthernetInterfaceLayer2Lldp { /** * Enable LLDP on Interface */ enable: pulumi.Input; } export interface EthernetInterfaceLayer3 { /** * Ethernet Interfaces ARP configuration */ arps?: pulumi.Input[] | undefined>; /** * Dynamic DNS configuration specific to the Ethernet Interfaces. */ ddnsConfig?: pulumi.Input; /** * Ethernet Interfaces DHCP Client Object */ dhcpClient?: pulumi.Input; /** * Interface management profile */ interfaceManagementProfile?: pulumi.Input; /** * Ethernet Interface IP addresses * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient`, `ip`, and `pppoe`. */ ips?: pulumi.Input[] | undefined>; /** * MTU */ mtu?: pulumi.Input; /** * Name of Netflow Profile to assign to Interface */ netflowProfile?: pulumi.Input; /** * Pppoe * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient`, `ip`, and `pppoe`. */ pppoe?: pulumi.Input; } export interface EthernetInterfaceLayer3Arp { /** * MAC address */ hwAddress?: pulumi.Input; /** * IP address */ name?: pulumi.Input; } export interface EthernetInterfaceLayer3DdnsConfig { /** * Certificate profile */ ddnsCertProfile: pulumi.Input; /** * Enable DDNS? */ ddnsEnabled?: pulumi.Input; /** * Ddns hostname */ ddnsHostname: pulumi.Input; /** * IP to register (static only) */ ddnsIp?: pulumi.Input; /** * Update interval (days) */ ddnsUpdateInterval?: pulumi.Input; /** * DDNS vendor */ ddnsVendor: pulumi.Input; /** * DDNS vendor */ ddnsVendorConfig: pulumi.Input; } export interface EthernetInterfaceLayer3DhcpClient { /** * Automatically create default route pointing to default gateway provided by server */ createDefaultRoute?: pulumi.Input; /** * Metric of the default route created */ defaultRouteMetric?: pulumi.Input; /** * Enable DHCP? */ enable?: pulumi.Input; /** * Ethernet Interfaces DHCP ClientSend hostname */ sendHostname?: pulumi.Input; } export interface EthernetInterfaceLayer3DhcpClientSendHostname { /** * Enable */ enable?: pulumi.Input; /** * Set interface hostname */ hostname?: pulumi.Input; } export interface EthernetInterfaceLayer3Ip { /** * Ethernet Interface IP addresses name */ name: pulumi.Input; } export interface EthernetInterfaceLayer3Pppoe { /** * Access concentrator */ accessConcentrator?: pulumi.Input; /** * Authentication protocol */ authentication?: pulumi.Input; /** * Metric of the default route created */ defaultRouteMetric?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Passive */ passive?: pulumi.Input; /** * Password */ password: pulumi.Input; /** * Service */ service?: pulumi.Input; /** * Static address */ staticAddress?: pulumi.Input; /** * Username */ username: pulumi.Input; } export interface EthernetInterfaceLayer3PppoePassive { /** * Passive Mode enabled */ enable: pulumi.Input; } export interface EthernetInterfaceLayer3PppoeStaticAddress { /** * Static IP address */ ip: pulumi.Input; } export interface EthernetInterfacePoe { /** * Enabled PoE? */ poeEnabled?: pulumi.Input; /** * PoE reserved power */ poeRsvdPwr?: pulumi.Input; } export interface EthernetInterfaceTap { /** * Name of Netflow Profile to assign to Interface */ netflowProfile?: pulumi.Input; } export interface ExternalDynamicListType { /** * Domain settings for Custom Domain type */ domain?: pulumi.Input; /** * IMEI Configuration settings * * > ℹ️ **Note:** You must specify exactly one of `domain`, `imei`, `imsi`, `ip`, `predefinedIp`, `predefinedUrl`, and `url`. */ imei?: pulumi.Input; /** * IMSI Config for Custom IMSI type * * > ℹ️ **Note:** You must specify exactly one of `domain`, `imei`, `imsi`, `ip`, `predefinedIp`, `predefinedUrl`, and `url`. */ imsi?: pulumi.Input; /** * IP settings for Custom IP type * * > ℹ️ **Note:** You must specify exactly one of `domain`, `imei`, `imsi`, `ip`, `predefinedIp`, `predefinedUrl`, and `url`. */ ip?: pulumi.Input; /** * Predefined IP settings for EDL type * * > ℹ️ **Note:** You must specify exactly one of `domain`, `imei`, `imsi`, `ip`, `predefinedIp`, `predefinedUrl`, and `url`. */ predefinedIp?: pulumi.Input; /** * Predefined URL settings for EDL type * * > ℹ️ **Note:** You must specify exactly one of `domain`, `imei`, `imsi`, `ip`, `predefinedIp`, `predefinedUrl`, and `url`. */ predefinedUrl?: pulumi.Input; /** * URL settings for Custom URL type * * > ℹ️ **Note:** You must specify exactly one of `domain`, `imei`, `imsi`, `ip`, `predefinedIp`, `predefinedUrl`, and `url`. */ url?: pulumi.Input; } export interface ExternalDynamicListTypeDomain { /** * Authentication settings for Custom Domain type */ auth?: pulumi.Input; /** * Profile for authenticating client certificates */ certificateProfile?: pulumi.Input; /** * Description */ description?: pulumi.Input; /** * Domain Exception List for Custom Domain type */ exceptionLists?: pulumi.Input[] | undefined>; /** * Enable/Disable expand domain */ expandDomain?: pulumi.Input; /** * Update Schedule for Custom Domain type */ recurring: pulumi.Input; /** * External URL for Custom Domain type */ url: pulumi.Input; } export interface ExternalDynamicListTypeDomainAuth { /** * Password for Custom Domain authentication */ password: pulumi.Input; /** * Username for Custom Domain authentication */ username: pulumi.Input; } export interface ExternalDynamicListTypeDomainRecurring { /** * Daily settings for Domain recurring */ daily?: pulumi.Input; /** * Five minute settings for Domain recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ fiveMinute?: pulumi.Input; /** * Hourly settings for Domain recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ hourly?: pulumi.Input; /** * Monthly settings for Domain recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ monthly?: pulumi.Input; /** * Weekly settings for Domain recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ weekly?: pulumi.Input; } export interface ExternalDynamicListTypeDomainRecurringDaily { /** * Daily Time specification hh (e.g. 20) for Domain */ at: pulumi.Input; } export interface ExternalDynamicListTypeDomainRecurringFiveMinute { } export interface ExternalDynamicListTypeDomainRecurringHourly { } export interface ExternalDynamicListTypeDomainRecurringMonthly { /** * Monthly Time specification hh (e.g. 20) for domain */ at: pulumi.Input; /** * Day setting for monthly Domain updates */ dayOfMonth: pulumi.Input; } export interface ExternalDynamicListTypeDomainRecurringWeekly { /** * Weekly Time specification hh (e.g. 20) for Domain */ at: pulumi.Input; /** * Day of week */ dayOfWeek: pulumi.Input; } export interface ExternalDynamicListTypeImei { /** * IMEI Auth Cnfig for Custom IMEI type */ auth?: pulumi.Input; /** * IMEI Certificate Profile for Custom IMEI type */ certificateProfile?: pulumi.Input; /** * IMEI Description for Custom IMEI type */ description?: pulumi.Input; /** * IMEI Exception List for Custom IMEI type */ exceptionLists?: pulumi.Input[] | undefined>; /** * Recurring interval for IMEI updates */ recurring: pulumi.Input; /** * IMEI URL for Custom IMEI type */ url: pulumi.Input; } export interface ExternalDynamicListTypeImeiAuth { /** * IMEI Auth Password for Custom IMEI type */ password: pulumi.Input; /** * IMEI Auth username for Custom IMEI type */ username: pulumi.Input; } export interface ExternalDynamicListTypeImeiRecurring { /** * Daily interval settings for IMEI updates */ daily?: pulumi.Input; /** * Five-minute interval settings for IMEI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ fiveMinute?: pulumi.Input; /** * Hourly interval settings for IMEI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ hourly?: pulumi.Input; /** * Monthly interval settings for IMEI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ monthly?: pulumi.Input; /** * Weekly interval settings for IMEI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ weekly?: pulumi.Input; } export interface ExternalDynamicListTypeImeiRecurringDaily { /** * Daily Time specification hh (e.g. 20) for IMEI */ at: pulumi.Input; } export interface ExternalDynamicListTypeImeiRecurringFiveMinute { } export interface ExternalDynamicListTypeImeiRecurringHourly { } export interface ExternalDynamicListTypeImeiRecurringMonthly { /** * Monthly Time specification hh (e.g. 20) for IMEI */ at: pulumi.Input; /** * Day of month for IMEI updates */ dayOfMonth: pulumi.Input; } export interface ExternalDynamicListTypeImeiRecurringWeekly { /** * Weekly Time specification hh (e.g. 20) for IMEI */ at: pulumi.Input; /** * Day of week */ dayOfWeek: pulumi.Input; } export interface ExternalDynamicListTypeImsi { /** * IMSI Auth Config for Custom IMSI type */ auth?: pulumi.Input; /** * IMSI Certificate Profile for Custom IMSI type */ certificateProfile?: pulumi.Input; /** * IMSI Description for Custom IMSI type */ description?: pulumi.Input; /** * IMSI Exception List for Custom IMSI type */ exceptionLists?: pulumi.Input[] | undefined>; /** * IMSI Recuring Config for Custom IMSI type */ recurring: pulumi.Input; /** * IMSI URL for Custom IMSI type */ url: pulumi.Input; } export interface ExternalDynamicListTypeImsiAuth { /** * IMSI Auth Password for Custom IMSI type */ password: pulumi.Input; /** * IMSI Auth Username for Custom IMSI type */ username: pulumi.Input; } export interface ExternalDynamicListTypeImsiRecurring { /** * Daily interval settings for IMSI updates */ daily?: pulumi.Input; /** * Five-minute interval settings for IMSI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ fiveMinute?: pulumi.Input; /** * Hourly interval settings for IMSI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ hourly?: pulumi.Input; /** * Monthly interval settings for IMSI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ monthly?: pulumi.Input; /** * Weekly interval settings for IMSI updates * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ weekly?: pulumi.Input; } export interface ExternalDynamicListTypeImsiRecurringDaily { /** * Daily Time specification hh (e.g. 20) for IMSI */ at: pulumi.Input; } export interface ExternalDynamicListTypeImsiRecurringFiveMinute { } export interface ExternalDynamicListTypeImsiRecurringHourly { } export interface ExternalDynamicListTypeImsiRecurringMonthly { /** * Monthly Time specification hh (e.g. 20) for IMSI */ at: pulumi.Input; /** * Day of the month for monthly IMSI updates */ dayOfMonth: pulumi.Input; } export interface ExternalDynamicListTypeImsiRecurringWeekly { /** * Weekly Time specification hh (e.g. 20) for IMSI */ at: pulumi.Input; /** * Day of week */ dayOfWeek: pulumi.Input; } export interface ExternalDynamicListTypeIp { /** * Authentication settings for Custom IP type */ auth?: pulumi.Input; /** * Profile for authenticating client certificates */ certificateProfile?: pulumi.Input; /** * Description */ description?: pulumi.Input; /** * IP Exception List for Custom IP type */ exceptionLists?: pulumi.Input[] | undefined>; /** * Update Schedule for Custom IP type */ recurring: pulumi.Input; /** * External URL for Custom IP type */ url: pulumi.Input; } export interface ExternalDynamicListTypeIpAuth { /** * Password for Custom IP authentication */ password: pulumi.Input; /** * Username for Custom IP authentication */ username: pulumi.Input; } export interface ExternalDynamicListTypeIpRecurring { /** * Daily settings for IP recurring */ daily?: pulumi.Input; /** * Five minute settings for IP recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ fiveMinute?: pulumi.Input; /** * Hourly settings for IP recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ hourly?: pulumi.Input; /** * Monthly settings for IP recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ monthly?: pulumi.Input; /** * Weekly settings for IP recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ weekly?: pulumi.Input; } export interface ExternalDynamicListTypeIpRecurringDaily { /** * Daily Time specification hh (e.g. 20) for IP */ at: pulumi.Input; } export interface ExternalDynamicListTypeIpRecurringFiveMinute { } export interface ExternalDynamicListTypeIpRecurringHourly { } export interface ExternalDynamicListTypeIpRecurringMonthly { /** * Monthly Time specification hh (e.g. 20) for IP */ at: pulumi.Input; /** * Day setting for monthly IP updates */ dayOfMonth: pulumi.Input; } export interface ExternalDynamicListTypeIpRecurringWeekly { /** * Weekly Time specification hh (e.g. 20) for IP */ at: pulumi.Input; /** * Day of week */ dayOfWeek: pulumi.Input; } export interface ExternalDynamicListTypePredefinedIp { /** * Description */ description?: pulumi.Input; /** * IP Exception List for Predefined IP type */ exceptionLists?: pulumi.Input[] | undefined>; /** * URL source for Predefined IP type */ url: pulumi.Input; } export interface ExternalDynamicListTypePredefinedUrl { /** * Description */ description?: pulumi.Input; /** * URL Exception List for Predefined URL type */ exceptionLists?: pulumi.Input[] | undefined>; /** * URL source for Predefined URL type */ url: pulumi.Input; } export interface ExternalDynamicListTypeUrl { /** * Authentication settings for Custom URL type */ auth?: pulumi.Input; /** * Profile for authenticating client certificates */ certificateProfile?: pulumi.Input; /** * Description */ description?: pulumi.Input; /** * URL Exception List for Custom URL type */ exceptionLists?: pulumi.Input[] | undefined>; /** * Update Schedule for Custom URL type */ recurring: pulumi.Input; /** * External URL for Custom URL type */ url: pulumi.Input; } export interface ExternalDynamicListTypeUrlAuth { /** * Password for Custom URL authentication */ password: pulumi.Input; /** * Username for Custom URL authentication */ username: pulumi.Input; } export interface ExternalDynamicListTypeUrlRecurring { /** * Daily settings for URL recurring */ daily?: pulumi.Input; /** * Five minute settings for URL recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ fiveMinute?: pulumi.Input; /** * Hourly settings for URL recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ hourly?: pulumi.Input; /** * Monthly settings for URL recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ monthly?: pulumi.Input; /** * Weekly settings for URL recurring * * > ℹ️ **Note:** You must specify exactly one of `daily`, `fiveMinute`, `hourly`, `monthly`, and `weekly`. */ weekly?: pulumi.Input; } export interface ExternalDynamicListTypeUrlRecurringDaily { /** * Daily Time specification hh (e.g. 20) for URL */ at: pulumi.Input; } export interface ExternalDynamicListTypeUrlRecurringFiveMinute { } export interface ExternalDynamicListTypeUrlRecurringHourly { } export interface ExternalDynamicListTypeUrlRecurringMonthly { /** * Monthly Time specification hh (e.g. 20) for URL */ at: pulumi.Input; /** * Day setting for monthly URL updates */ dayOfMonth: pulumi.Input; } export interface ExternalDynamicListTypeUrlRecurringWeekly { /** * Weekly Time specification hh (e.g. 20) for URL */ at: pulumi.Input; /** * Day of week */ dayOfWeek: pulumi.Input; } export interface FileBlockingProfileRule { /** * The action to take when the rule match criteria is met */ action: pulumi.Input; /** * The application transferring the files (App-ID naming) */ applications: pulumi.Input[]>; /** * The direction of the file transfer */ direction: pulumi.Input; /** * The file type */ fileTypes: pulumi.Input[]>; /** * The name of the file blocking rule */ name: pulumi.Input; } export interface ForwardingProfileDestinationFqdn { /** * alphanumeric string [*0-9a-zA-Z._-] and at most one $ by the end */ name: pulumi.Input; /** * Port number for fqdn based destination */ port?: pulumi.Input; } export interface ForwardingProfileDestinationIpAddress { /** * IP address with wildcards and CIDR notation support */ name: pulumi.Input; /** * Port number for IP address based destination */ port?: pulumi.Input; } export interface ForwardingProfileRegionalAndCustomProxyConnectivityPreference { /** * Indicates whether this connectivity method is enabled for use in the proxy configuration */ enabled?: pulumi.Input; /** * Connectivity method type - 'tunnel' for VPN tunnels, 'proxy' for HTTP/HTTPS proxies, 'adns' for authenticated DNS, 'masque' for MASQUE protocol */ name: pulumi.Input; } export interface ForwardingProfileRegionalAndCustomProxyPrismaAccessLocation { /** * Add list of locations separated by space, in that region */ locations?: pulumi.Input[] | undefined>; /** * One of the region from 'americas', 'europe', 'apac' */ name: pulumi.Input; } export interface ForwardingProfileRegionalAndCustomProxyProxy1 { /** * fqdn of the primary proxy server (supports wildcards and alphanumeric characters with dots, hyphens, and underscores) */ fqdn?: pulumi.Input; /** * Geographic or network location identifier for the primary proxy server */ location?: pulumi.Input; /** * port number for primary proxy */ port?: pulumi.Input; } export interface ForwardingProfileRegionalAndCustomProxyProxy2 { /** * Fqdn of the secondary (backup) proxy server used for failover scenarios */ fqdn?: pulumi.Input; /** * Geographic or network location identifier for the secondary proxy server */ location?: pulumi.Input; /** * port number for secondary proxy */ port?: pulumi.Input; } export interface ForwardingProfileType { /** * Global Protect proxy-based forwarding configuration */ globalProtectProxy?: pulumi.Input; /** * PAC file based forwarding configuration * * > ℹ️ **Note:** You must specify exactly one of `globalProtectProxy`, `pacFile`, and `ztnaAgent`. */ pacFile?: pulumi.Input; /** * ZTNA agent-based forwarding configuration * * > ℹ️ **Note:** You must specify exactly one of `globalProtectProxy`, `pacFile`, and `ztnaAgent`. */ ztnaAgent?: pulumi.Input; } export interface ForwardingProfileTypeGlobalProtectProxy { /** * Basic block rule configuration for PAC file and GlobalProtect proxy profiles */ blockRule?: pulumi.Input; /** * List of GlobalProtect proxy-based forwarding rules */ forwardingRules?: pulumi.Input[] | undefined>; /** * User uploaded PAC file for Global Protect proxy-based forwarding configuration */ pacUpload?: pulumi.Input; } export interface ForwardingProfileTypeGlobalProtectProxyBlockRule { /** * TCP traffic allowlist configuration */ allowTcp?: pulumi.Input; /** * UDP traffic allowlist configuration with location and destination support */ allowUdp?: pulumi.Input; /** * Enable block rule */ enable?: pulumi.Input; } export interface ForwardingProfileTypeGlobalProtectProxyBlockRuleAllowTcp { /** * Enable locations for allow-tcp */ enableLocations?: pulumi.Input; /** * List of user locations allowed for TCP traffic */ locations?: pulumi.Input[] | undefined>; } export interface ForwardingProfileTypeGlobalProtectProxyBlockRuleAllowUdp { /** * Destination addresses or networks allowed for UDP traffic */ destinations?: pulumi.Input; /** * Enable destinations for allow-udp */ enableDestinations?: pulumi.Input; /** * Enable locations for allow-udp */ enableLocations?: pulumi.Input; /** * List of user locations allowed for UDP traffic */ locations?: pulumi.Input[] | undefined>; } export interface ForwardingProfileTypeGlobalProtectProxyForwardingRule { /** * Connectivity method for this forwarding rule (e.g. direct) */ connectivity?: pulumi.Input; /** * Destination scope this forwarding rule applies to */ destinations?: pulumi.Input; /** * Enable a basic forwarding rule */ enabled?: pulumi.Input; /** * Basic forwarding rule name as an alphanumeric string [ 0-9a-zA-Z._ -] */ name: pulumi.Input; /** * User location scope this rule applies to */ userLocations?: pulumi.Input; } export interface ForwardingProfileTypePacFile { /** * Basic block rule configuration for PAC file and GlobalProtect proxy profiles */ blockRule?: pulumi.Input; /** * List of PAC file-based forwarding rules */ forwardingRules?: pulumi.Input[] | undefined>; /** * User upload PAC file for PAC file based forwarding configuration */ pacUpload?: pulumi.Input; } export interface ForwardingProfileTypePacFileBlockRule { /** * TCP traffic allowlist configuration */ allowTcp?: pulumi.Input; /** * UDP traffic allowlist configuration with location and destination support */ allowUdp?: pulumi.Input; /** * Enable block rule */ enable?: pulumi.Input; } export interface ForwardingProfileTypePacFileBlockRuleAllowTcp { /** * Enable locations for allow-tcp */ enableLocations?: pulumi.Input; /** * List of user locations allowed for TCP traffic */ locations?: pulumi.Input[] | undefined>; } export interface ForwardingProfileTypePacFileBlockRuleAllowUdp { /** * Destination addresses or networks allowed for UDP traffic */ destinations?: pulumi.Input; /** * Enable destinations for allow-udp */ enableDestinations?: pulumi.Input; /** * Enable locations for allow-udp */ enableLocations?: pulumi.Input; /** * List of user locations allowed for UDP traffic */ locations?: pulumi.Input[] | undefined>; } export interface ForwardingProfileTypePacFileForwardingRule { /** * Connectivity method for this forwarding rule (e.g. direct) */ connectivity?: pulumi.Input; /** * Destination scope this forwarding rule applies to */ destinations?: pulumi.Input; /** * Enable a basic forwarding rule */ enabled?: pulumi.Input; /** * Basic forwarding rule name as an alphanumeric string [ 0-9a-zA-Z._ -] */ name: pulumi.Input; /** * User location scope this rule applies to */ userLocations?: pulumi.Input; } export interface ForwardingProfileTypeZtnaAgent { /** * ZTNA block rule configuration */ blockRule?: pulumi.Input; /** * List of ZTNA agent-based forwarding rules */ forwardingRules?: pulumi.Input[] | undefined>; /** * User uploaded PAC file for a ZTNA agent-based forwarding configuration */ pacUpload?: pulumi.Input; } export interface ForwardingProfileTypeZtnaAgentBlockRule { /** * Allow ICMP for troubleshooting */ allowIcmpForTroubleshooting?: pulumi.Input; /** * Block all other unmatched outbound connections */ blockAllOtherUnmatchedOutboundConnections?: pulumi.Input; /** * Block inbound access when connected to tunnel */ blockInboundAccessWhenConnectedToTunnel?: pulumi.Input; /** * Block Non-TCP Non UDP based traffic when connected to tunnel */ blockNonTcpNonUdpTrafficWhenConnectedToTunnel?: pulumi.Input; /** * Block outbound LAN access when connected to tunnel */ blockOutboundLanAccessWhenConnectedToTunnel?: pulumi.Input; /** * Enforce FQDN DNS resolution via tunnel DNS servers */ enforcerFqdnDnsResolutionViaDnsServers?: pulumi.Input; /** * Resolve All FQDNs using DNS servers assigned by the tunnel (Windows Only) */ resolveAllFqdnsUsingDnsServersAssignedByTheTunnel?: pulumi.Input; } export interface ForwardingProfileTypeZtnaAgentForwardingRule { /** * Connectivity method for this ZTNA forwarding rule (e.g. direct) */ connectivity?: pulumi.Input; /** * Destination scope this ZTNA forwarding rule applies to */ destinations?: pulumi.Input; /** * Enable a forwarding rule ztna */ enabled?: pulumi.Input; /** * Forwarding rule ZTNA name as an alphanumeric string [ 0-9a-zA-Z._ -] */ name: pulumi.Input; /** * Source applications this ZTNA rule applies to */ sourceApplications?: pulumi.Input; /** * Type of traffic this ZTNA rule applies to (dns, network, or both) */ trafficType?: pulumi.Input; /** * User location scope this ZTNA rule applies to */ userLocations?: pulumi.Input; } export interface ForwardingProfileUserLocationInternalHostDetection { /** * user location fqdn */ fqdn: pulumi.Input; /** * user location ip address */ ipAddress: pulumi.Input; } export interface GeneralSettingGeneral { /** * Force admins to acknowledge login banner */ ackLoginBanner?: pulumi.Input; /** * DNS domain */ domain?: pulumi.Input; /** * Geographic coordinates */ geoLocation?: pulumi.Input; /** * Locale */ locale?: pulumi.Input; /** * Logon banner */ loginBanner?: pulumi.Input; /** * Setting */ setting?: pulumi.Input; /** * SSL/TLS service profile */ sslTlsServiceProfile?: pulumi.Input; /** * Timezone */ timezone?: pulumi.Input; } export interface GeneralSettingGeneralGeoLocation { /** * Latitude */ latitude?: pulumi.Input; /** * Longitude */ longitude?: pulumi.Input; } export interface GeneralSettingGeneralSetting { /** * Use hypervisor assigned MAC addresses */ autoMacDetect?: pulumi.Input; /** * Fail open */ failOpen?: pulumi.Input; /** * Management */ management?: pulumi.Input; /** * Tunnel acceleration */ tunnelAcceleration?: pulumi.Input; } export interface GeneralSettingGeneralSettingManagement { /** * Automatically acquire commit lock */ autoAcquireCommitLock?: pulumi.Input; /** * Certificate expiration check */ enableCertificateExpirationCheck?: pulumi.Input; } export interface HipObjectAntiMalware { /** * Criteria */ criteria?: pulumi.Input; /** * Exclude vendor */ excludeVendor?: pulumi.Input; /** * Vendor name */ vendors?: pulumi.Input[] | undefined>; } export interface HipObjectAntiMalwareCriteria { /** * Is Installed */ isInstalled?: pulumi.Input; /** * Last scan time */ lastScanTime?: pulumi.Input; /** * Product version */ productVersion?: pulumi.Input; /** * real time protection */ realTimeProtection?: pulumi.Input; /** * Virdef version */ virdefVersion?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaLastScanTime { /** * Not available */ notAvailable?: pulumi.Input; /** * Not within * * > ℹ️ **Note:** You must specify exactly one of `notAvailable`, `notWithin`, and `within`. */ notWithin?: pulumi.Input; /** * Within * * > ℹ️ **Note:** You must specify exactly one of `notAvailable`, `notWithin`, and `within`. */ within?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaLastScanTimeNotAvailable { } export interface HipObjectAntiMalwareCriteriaLastScanTimeNotWithin { /** * specify time in days */ days?: pulumi.Input; /** * specify time in hours * * > ℹ️ **Note:** You must specify exactly one of `days` and `hours`. */ hours?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaLastScanTimeWithin { /** * specify time in days */ days?: pulumi.Input; /** * specify time in hours * * > ℹ️ **Note:** You must specify exactly one of `days` and `hours`. */ hours?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaProductVersion { /** * Contains */ contains?: pulumi.Input; /** * Greater equal * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ greaterEqual?: pulumi.Input; /** * Greater than * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ greaterThan?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ isNot?: pulumi.Input; /** * Less equal * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ lessEqual?: pulumi.Input; /** * Less than * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ lessThan?: pulumi.Input; /** * Not within * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ notWithin?: pulumi.Input; /** * Within * * > ℹ️ **Note:** You must specify exactly one of `contains`, `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, `lessThan`, `notWithin`, and `within`. */ within?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaProductVersionNotWithin { /** * versions range */ versions: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaProductVersionWithin { /** * versions range */ versions: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaVirdefVersion { /** * Not within */ notWithin?: pulumi.Input; /** * Within * * > ℹ️ **Note:** You must specify exactly one of `notWithin` and `within`. */ within?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaVirdefVersionNotWithin { /** * specify time in days */ days?: pulumi.Input; /** * specify versions range * * > ℹ️ **Note:** You must specify exactly one of `days` and `versions`. */ versions?: pulumi.Input; } export interface HipObjectAntiMalwareCriteriaVirdefVersionWithin { /** * specify time in days */ days?: pulumi.Input; /** * specify versions range * * > ℹ️ **Note:** You must specify exactly one of `days` and `versions`. */ versions?: pulumi.Input; } export interface HipObjectAntiMalwareVendor { /** * Name */ name: pulumi.Input; /** * Product */ products?: pulumi.Input[] | undefined>; } export interface HipObjectCertificate { /** * Criteria */ criteria?: pulumi.Input; } export interface HipObjectCertificateCriteria { /** * Certificate attributes */ certificateAttributes?: pulumi.Input[] | undefined>; /** * Profile for authenticating client certificates */ certificateProfile?: pulumi.Input; } export interface HipObjectCertificateCriteriaCertificateAttribute { /** * Attribute Name */ name: pulumi.Input; /** * Key value */ value?: pulumi.Input; } export interface HipObjectCustomChecks { /** * Criteria */ criteria: pulumi.Input; } export interface HipObjectCustomChecksCriteria { /** * Plist */ plists?: pulumi.Input[] | undefined>; /** * Process list */ processLists?: pulumi.Input[] | undefined>; /** * Registry key */ registryKeys?: pulumi.Input[] | undefined>; } export interface HipObjectCustomChecksCriteriaPlist { /** * Key */ keys?: pulumi.Input[] | undefined>; /** * Preference list */ name: pulumi.Input; /** * Plist does not exist */ negate?: pulumi.Input; } export interface HipObjectCustomChecksCriteriaPlistKey { /** * Key name */ name: pulumi.Input; /** * Value does not exist or match specified value data */ negate?: pulumi.Input; /** * Key value */ value?: pulumi.Input; } export interface HipObjectCustomChecksCriteriaProcessList { /** * Process Name */ name: pulumi.Input; /** * Running */ running?: pulumi.Input; } export interface HipObjectCustomChecksCriteriaRegistryKey { /** * Registry key default value data */ defaultValueData?: pulumi.Input; /** * Registry key */ name: pulumi.Input; /** * Key does not exist or match specified value data */ negate?: pulumi.Input; /** * Registry value */ registryValues?: pulumi.Input[] | undefined>; } export interface HipObjectCustomChecksCriteriaRegistryKeyRegistryValue { /** * Registry value name */ name: pulumi.Input; /** * Value does not exist or match specified value data */ negate?: pulumi.Input; /** * Registry value data */ valueData?: pulumi.Input; } export interface HipObjectDataLossPrevention { /** * Criteria */ criteria?: pulumi.Input; /** * Exclude vendor */ excludeVendor?: pulumi.Input; /** * Vendor name */ vendors?: pulumi.Input[] | undefined>; } export interface HipObjectDataLossPreventionCriteria { /** * is enabled */ isEnabled?: pulumi.Input; /** * Is Installed */ isInstalled?: pulumi.Input; } export interface HipObjectDataLossPreventionVendor { /** * Name */ name: pulumi.Input; /** * Product name */ products?: pulumi.Input[] | undefined>; } export interface HipObjectDiskBackup { /** * Criteria */ criteria?: pulumi.Input; /** * Exclude vendor */ excludeVendor?: pulumi.Input; /** * Vendor name */ vendors?: pulumi.Input[] | undefined>; } export interface HipObjectDiskBackupCriteria { /** * Is Installed */ isInstalled?: pulumi.Input; /** * Last backup time */ lastBackupTime?: pulumi.Input; } export interface HipObjectDiskBackupCriteriaLastBackupTime { /** * Not available */ notAvailable?: pulumi.Input; /** * Not within * * > ℹ️ **Note:** You must specify exactly one of `notAvailable`, `notWithin`, and `within`. */ notWithin?: pulumi.Input; /** * Within * * > ℹ️ **Note:** You must specify exactly one of `notAvailable`, `notWithin`, and `within`. */ within?: pulumi.Input; } export interface HipObjectDiskBackupCriteriaLastBackupTimeNotAvailable { } export interface HipObjectDiskBackupCriteriaLastBackupTimeNotWithin { /** * specify time in days */ days?: pulumi.Input; /** * specify time in hours * * > ℹ️ **Note:** You must specify exactly one of `days` and `hours`. */ hours?: pulumi.Input; } export interface HipObjectDiskBackupCriteriaLastBackupTimeWithin { /** * specify time in days */ days?: pulumi.Input; /** * specify time in hours * * > ℹ️ **Note:** You must specify exactly one of `days` and `hours`. */ hours?: pulumi.Input; } export interface HipObjectDiskBackupVendor { /** * Name */ name: pulumi.Input; /** * Product */ products?: pulumi.Input[] | undefined>; } export interface HipObjectDiskEncryption { /** * Encryption locations */ criteria?: pulumi.Input; /** * Exclude vendor */ excludeVendor?: pulumi.Input; /** * Vendor name */ vendors?: pulumi.Input[] | undefined>; } export interface HipObjectDiskEncryptionCriteria { /** * Encrypted locations */ encryptedLocations?: pulumi.Input[] | undefined>; /** * Is Installed */ isInstalled?: pulumi.Input; } export interface HipObjectDiskEncryptionCriteriaEncryptedLocation { /** * Encryption state */ encryptionState?: pulumi.Input; /** * Encryption location */ name: pulumi.Input; } export interface HipObjectDiskEncryptionCriteriaEncryptedLocationEncryptionState { /** * Is */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `is` and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectDiskEncryptionVendor { /** * Name */ name: pulumi.Input; /** * Product */ products?: pulumi.Input[] | undefined>; } export interface HipObjectFirewall { /** * Criteria */ criteria?: pulumi.Input; /** * Exclude vendor */ excludeVendor?: pulumi.Input; /** * Vendor name */ vendors?: pulumi.Input[] | undefined>; } export interface HipObjectFirewallCriteria { /** * is enabled */ isEnabled?: pulumi.Input; /** * Is Installed */ isInstalled?: pulumi.Input; } export interface HipObjectFirewallVendor { /** * Name */ name: pulumi.Input; /** * Product */ products?: pulumi.Input[] | undefined>; } export interface HipObjectHostInfo { /** * Criteria */ criteria: pulumi.Input; } export interface HipObjectHostInfoCriteria { /** * Client version */ clientVersion?: pulumi.Input; /** * Domain */ domain?: pulumi.Input; /** * Host id */ hostId?: pulumi.Input; /** * Host name */ hostName?: pulumi.Input; /** * If device is managed */ managed?: pulumi.Input; /** * Os */ os?: pulumi.Input; /** * Serial number */ serialNumber?: pulumi.Input; } export interface HipObjectHostInfoCriteriaClientVersion { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectHostInfoCriteriaDomain { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectHostInfoCriteriaHostId { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectHostInfoCriteriaHostName { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectHostInfoCriteriaOs { /** * Contains */ contains?: pulumi.Input; } export interface HipObjectHostInfoCriteriaOsContains { /** * Apple */ apple?: pulumi.Input; /** * Google */ google?: pulumi.Input; /** * Linux */ linux?: pulumi.Input; /** * Microsoft */ microsoft?: pulumi.Input; /** * Other */ other?: pulumi.Input; } export interface HipObjectHostInfoCriteriaSerialNumber { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectMobileDevice { /** * Criteria */ criteria?: pulumi.Input; } export interface HipObjectMobileDeviceCriteria { /** * Applications */ applications?: pulumi.Input; /** * If device's disk is encrypted */ diskEncrypted?: pulumi.Input; /** * Imei */ imei?: pulumi.Input; /** * If device is by rooted/jailbroken */ jailbroken?: pulumi.Input; /** * Last checkin time */ lastCheckinTime?: pulumi.Input; /** * Model */ model?: pulumi.Input; /** * If device's passcode is present */ passcodeSet?: pulumi.Input; /** * Phone number */ phoneNumber?: pulumi.Input; /** * Tag */ tag?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaApplications { /** * Has malware */ hasMalware?: pulumi.Input; /** * Has apps that are not managed */ hasUnmanagedApp?: pulumi.Input; /** * Includes */ includes?: pulumi.Input[] | undefined>; } export interface HipObjectMobileDeviceCriteriaApplicationsHasMalware { /** * No */ no?: pulumi.Input; /** * Yes * * > ℹ️ **Note:** You must specify exactly one of `no` and `yes`. */ yes?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaApplicationsHasMalwareNo { } export interface HipObjectMobileDeviceCriteriaApplicationsHasMalwareYes { /** * Excludes */ excludes?: pulumi.Input[] | undefined>; } export interface HipObjectMobileDeviceCriteriaApplicationsHasMalwareYesExclude { /** * application hash */ hash?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * application package name */ package?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaApplicationsInclude { /** * application hash */ hash?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * application package name */ package?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaImei { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaLastCheckinTime { /** * Not within */ notWithin?: pulumi.Input; /** * Within * * > ℹ️ **Note:** You must specify exactly one of `notWithin` and `within`. */ within?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaLastCheckinTimeNotWithin { /** * specify time in days */ days: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaLastCheckinTimeWithin { /** * specify time in days */ days: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaModel { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaPhoneNumber { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectMobileDeviceCriteriaTag { /** * Contains */ contains?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `contains`, `is`, and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectNetworkInfo { /** * Criteria */ criteria?: pulumi.Input; } export interface HipObjectNetworkInfoCriteria { /** * Network */ network?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetwork { /** * Is */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `is` and `isNot`. */ isNot?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetworkIs { /** * Mobile */ mobile?: pulumi.Input; /** * Unknown * * > ℹ️ **Note:** You must specify exactly one of `mobile`, `unknown`, and `wifi`. */ unknown?: pulumi.Input; /** * Wifi * * > ℹ️ **Note:** You must specify exactly one of `mobile`, `unknown`, and `wifi`. */ wifi?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetworkIsMobile { /** * Carrier */ carrier?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetworkIsNot { /** * Ethernet */ ethernet?: pulumi.Input; /** * Mobile * * > ℹ️ **Note:** You must specify exactly one of `ethernet`, `mobile`, `unknown`, and `wifi`. */ mobile?: pulumi.Input; /** * Unknown * * > ℹ️ **Note:** You must specify exactly one of `ethernet`, `mobile`, `unknown`, and `wifi`. */ unknown?: pulumi.Input; /** * Wifi * * > ℹ️ **Note:** You must specify exactly one of `ethernet`, `mobile`, `unknown`, and `wifi`. */ wifi?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetworkIsNotEthernet { } export interface HipObjectNetworkInfoCriteriaNetworkIsNotMobile { /** * Carrier */ carrier?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetworkIsNotUnknown { } export interface HipObjectNetworkInfoCriteriaNetworkIsNotWifi { /** * SSID */ ssid?: pulumi.Input; } export interface HipObjectNetworkInfoCriteriaNetworkIsUnknown { } export interface HipObjectNetworkInfoCriteriaNetworkIsWifi { /** * SSID */ ssid?: pulumi.Input; } export interface HipObjectPatchManagement { /** * Criteria */ criteria?: pulumi.Input; /** * Exclude vendor */ excludeVendor?: pulumi.Input; /** * Vendor name */ vendors?: pulumi.Input[] | undefined>; } export interface HipObjectPatchManagementCriteria { /** * is enabled */ isEnabled?: pulumi.Input; /** * Is Installed */ isInstalled?: pulumi.Input; /** * Missing patches */ missingPatches?: pulumi.Input; } export interface HipObjectPatchManagementCriteriaMissingPatches { /** * Check */ check: pulumi.Input; /** * Patches */ patches?: pulumi.Input[] | undefined>; /** * Severity */ severity?: pulumi.Input; } export interface HipObjectPatchManagementCriteriaMissingPatchesSeverity { /** * Greater equal */ greaterEqual?: pulumi.Input; /** * Greater than * * > ℹ️ **Note:** You must specify exactly one of `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, and `lessThan`. */ greaterThan?: pulumi.Input; /** * Is * * > ℹ️ **Note:** You must specify exactly one of `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, and `lessThan`. */ is?: pulumi.Input; /** * Is not * * > ℹ️ **Note:** You must specify exactly one of `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, and `lessThan`. */ isNot?: pulumi.Input; /** * Less equal * * > ℹ️ **Note:** You must specify exactly one of `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, and `lessThan`. */ lessEqual?: pulumi.Input; /** * Less than * * > ℹ️ **Note:** You must specify exactly one of `greaterEqual`, `greaterThan`, `is`, `isNot`, `lessEqual`, and `lessThan`. */ lessThan?: pulumi.Input; } export interface HipObjectPatchManagementVendor { /** * Name */ name: pulumi.Input; /** * Product name */ products?: pulumi.Input[] | undefined>; } export interface HttpHeaderProfileHttpHeaderInsertion { /** * The name of the HTTP header insertion rule */ name: pulumi.Input; /** * A list of HTTP header insertion definitions */ types: pulumi.Input[]>; } export interface HttpHeaderProfileHttpHeaderInsertionType { /** * A list of DNS domains */ domains: pulumi.Input[]>; /** * Headers */ headers: pulumi.Input[]>; /** * The HTTP header insertion type */ name: pulumi.Input; } export interface HttpHeaderProfileHttpHeaderInsertionTypeHeader { /** * The HTTP header string */ header: pulumi.Input; /** * Log the use of this HTTP header insertion? */ log?: pulumi.Input; /** * The name of the HTTP header */ name: pulumi.Input; /** * The value associated with the HTTP header */ value: pulumi.Input; } export interface HttpServerProfileFormat { /** * Auth */ auth?: pulumi.Input; /** * Config */ config?: pulumi.Input; /** * Correlation */ correlation?: pulumi.Input; /** * Data */ data?: pulumi.Input; /** * Decryption */ decryption?: pulumi.Input; /** * Globalprotect */ globalprotect?: pulumi.Input; /** * Gtp */ gtp?: pulumi.Input; /** * Hip match */ hipMatch?: pulumi.Input; /** * Iptag */ iptag?: pulumi.Input; /** * Sctp */ sctp?: pulumi.Input; /** * System */ system?: pulumi.Input; /** * Threat */ threat?: pulumi.Input; /** * Traffic */ traffic?: pulumi.Input; /** * Tunnel */ tunnel?: pulumi.Input; /** * Url */ url?: pulumi.Input; /** * Userid */ userid?: pulumi.Input; /** * Wildfire */ wildfire?: pulumi.Input; } export interface HttpServerProfileFormatAuth { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatAuthHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatAuthParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatConfig { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatConfigHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatConfigParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatCorrelation { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatCorrelationHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatCorrelationParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatData { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatDataHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatDataParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatDecryption { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatDecryptionHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatDecryptionParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatGlobalprotect { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatGlobalprotectHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatGlobalprotectParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatGtp { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatGtpHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatGtpParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatHipMatch { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatHipMatchHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatHipMatchParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatIptag { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatIptagHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatIptagParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatSctp { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatSctpHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatSctpParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatSystem { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatSystemHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatSystemParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatThreat { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatThreatHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatThreatParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatTraffic { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatTrafficHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatTrafficParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatTunnel { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatTunnelHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatTunnelParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatUrl { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatUrlHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatUrlParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatUserid { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatUseridHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatUseridParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileFormatWildfire { /** * Headers */ headers?: pulumi.Input[] | undefined>; /** * The name of the payload format */ name?: pulumi.Input; /** * Params */ params?: pulumi.Input[] | undefined>; /** * The log payload format. The accepted log field values are as follows. */ payload?: pulumi.Input; /** * The URL path of the HTTP server */ urlFormat?: pulumi.Input; } export interface HttpServerProfileFormatWildfireHeader { /** * Header name */ name?: pulumi.Input; /** * Header value */ value?: pulumi.Input; } export interface HttpServerProfileFormatWildfireParam { /** * Parameter name */ name?: pulumi.Input; /** * Parameter value */ value?: pulumi.Input; } export interface HttpServerProfileServer { /** * HTTP server address */ address?: pulumi.Input; /** * HTTP server certificate profile */ certificateProfile?: pulumi.Input; /** * HTTP operation to perform */ httpMethod?: pulumi.Input; /** * HTTP server name */ name?: pulumi.Input; /** * HTTP server port */ port?: pulumi.Input; /** * HTTP server protocol */ protocol?: pulumi.Input; /** * HTTP server TLS version */ tlsVersion?: pulumi.Input; } export interface IkeCryptoProfileLifetime { /** * specify lifetime in days */ days?: pulumi.Input; /** * specify lifetime in hours * * > ℹ️ **Note:** You must specify exactly one of `days`, `hours`, `minutes`, and `seconds`. */ hours?: pulumi.Input; /** * specify lifetime in minutes * * > ℹ️ **Note:** You must specify exactly one of `days`, `hours`, `minutes`, and `seconds`. */ minutes?: pulumi.Input; /** * specify lifetime in seconds * * > ℹ️ **Note:** You must specify exactly one of `days`, `hours`, `minutes`, and `seconds`. */ seconds?: pulumi.Input; } export interface IkeGatewayAuthentication { /** * Certificate */ certificate?: pulumi.Input; /** * Pre shared key * * > ℹ️ **Note:** You must specify exactly one of `certificate` and `preSharedKey`. */ preSharedKey?: pulumi.Input; } export interface IkeGatewayAuthenticationCertificate { /** * Allow id payload mismatch */ allowIdPayloadMismatch?: pulumi.Input; /** * Certificate profile */ certificateProfile?: pulumi.Input; /** * Local certificate */ localCertificate?: pulumi.Input; /** * Strict validation revocation */ strictValidationRevocation?: pulumi.Input; /** * Use management as source */ useManagementAsSource?: pulumi.Input; } export interface IkeGatewayAuthenticationCertificateLocalCertificate { /** * Local certificate name */ localCertificateName?: pulumi.Input; } export interface IkeGatewayAuthenticationPreSharedKey { /** * Key */ key?: pulumi.Input; } export interface IkeGatewayLocalAddress { /** * Interface variable or hardcoded vlan/loopback. vlan will be passed as default value */ interface?: pulumi.Input; /** * IP Prefix of the assigned interface */ ip?: pulumi.Input; } export interface IkeGatewayLocalId { /** * Local ID string */ id?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface IkeGatewayPeerAddress { /** * Dynamic */ dynamic?: pulumi.Input; /** * peer gateway FQDN name * * > ℹ️ **Note:** You must specify exactly one of `dynamic`, `fqdn`, and `ip`. */ fqdn?: pulumi.Input; /** * peer gateway has static IP address * * > ℹ️ **Note:** You must specify exactly one of `dynamic`, `fqdn`, and `ip`. */ ip?: pulumi.Input; } export interface IkeGatewayPeerAddressDynamic { } export interface IkeGatewayPeerId { /** * Peer ID string */ id?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface IkeGatewayProtocol { /** * Ikev1 */ ikev1?: pulumi.Input; /** * Ikev2 */ ikev2?: pulumi.Input; /** * Version */ version?: pulumi.Input; } export interface IkeGatewayProtocolCommon { /** * Fragmentation */ fragmentation?: pulumi.Input; /** * Enables NAT traversal for the IKE gateway. */ natTraversal?: pulumi.Input; /** * Passive mode */ passiveMode?: pulumi.Input; } export interface IkeGatewayProtocolCommonFragmentation { /** * Enable */ enable?: pulumi.Input; } export interface IkeGatewayProtocolCommonNatTraversal { /** * Enable */ enable?: pulumi.Input; } export interface IkeGatewayProtocolIkev1 { /** * Dpd */ dpd?: pulumi.Input; /** * Ike crypto profile */ ikeCryptoProfile?: pulumi.Input; } export interface IkeGatewayProtocolIkev1Dpd { /** * Enable */ enable?: pulumi.Input; } export interface IkeGatewayProtocolIkev2 { /** * Dpd */ dpd?: pulumi.Input; /** * Ike crypto profile */ ikeCryptoProfile?: pulumi.Input; } export interface IkeGatewayProtocolIkev2Dpd { /** * Enable */ enable?: pulumi.Input; } export interface InterfaceManagementProfilePermittedIp { /** * The allowed IP address or CIDR block. */ name: pulumi.Input; } export interface IpsecCryptoProfileAh { /** * Authentication */ authentications: pulumi.Input[]>; } export interface IpsecCryptoProfileEsp { /** * Authentication algorithm */ authentications: pulumi.Input[]>; /** * Encryption algorithm */ encryptions: pulumi.Input[]>; } export interface IpsecCryptoProfileLifesize { /** * specify lifesize in gigabytes(GB) */ gb?: pulumi.Input; /** * specify lifesize in kilobytes(KB) * * > ℹ️ **Note:** You must specify exactly one of `gb`, `kb`, `mb`, and `tb`. */ kb?: pulumi.Input; /** * specify lifesize in megabytes(MB) * * > ℹ️ **Note:** You must specify exactly one of `gb`, `kb`, `mb`, and `tb`. */ mb?: pulumi.Input; /** * specify lifesize in terabytes(TB) * * > ℹ️ **Note:** You must specify exactly one of `gb`, `kb`, `mb`, and `tb`. */ tb?: pulumi.Input; } export interface IpsecCryptoProfileLifetime { /** * specify lifetime in days */ days?: pulumi.Input; /** * specify lifetime in hours * * > ℹ️ **Note:** You must specify exactly one of `days`, `hours`, `minutes`, and `seconds`. */ hours?: pulumi.Input; /** * specify lifetime in minutes * * > ℹ️ **Note:** You must specify exactly one of `days`, `hours`, `minutes`, and `seconds`. */ minutes?: pulumi.Input; /** * specify lifetime in seconds * * > ℹ️ **Note:** You must specify exactly one of `days`, `hours`, `minutes`, and `seconds`. */ seconds?: pulumi.Input; } export interface IpsecTunnelAutoKey { /** * Ike gateway */ ikeGateways: pulumi.Input[]>; /** * Ipsec crypto profile */ ipsecCryptoProfile: pulumi.Input; /** * IPv6 type of proxy*id values */ proxyIdV6s?: pulumi.Input[] | undefined>; /** * IPv4 type of proxy*id values */ proxyIds?: pulumi.Input[] | undefined>; } export interface IpsecTunnelAutoKeyIkeGateway { /** * Name */ name?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyId { /** * Local */ local?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * IPv4 type of proxy*id protocol values for TCP protocol */ protocol?: pulumi.Input; /** * Remote */ remote?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdProtocol { /** * IP protocol number */ number?: pulumi.Input; /** * IPv4 type of proxyId protocol values for TCP protocol * * > ℹ️ **Note:** You must specify exactly one of `number`, `tcp`, and `udp`. */ tcp?: pulumi.Input; /** * IPv6 type of proxyId protocol values for UDP protocol * * > ℹ️ **Note:** You must specify exactly one of `number`, `tcp`, and `udp`. */ udp?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdProtocolTcp { /** * Local port */ localPort?: pulumi.Input; /** * Remote port */ remotePort?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdProtocolUdp { /** * Local port */ localPort?: pulumi.Input; /** * Remote port */ remotePort?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdV6 { /** * Local */ local?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * IPv6 type of proxy*id protocol values for protocol */ protocol?: pulumi.Input; /** * Remote */ remote?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdV6Protocol { /** * IP protocol number */ number?: pulumi.Input; /** * IPv6 type of proxyId protocol values for TCP protocol * * > ℹ️ **Note:** You must specify exactly one of `number`, `tcp`, and `udp`. */ tcp?: pulumi.Input; /** * IPv6 type of proxyId protocol values for UDP protocol * * > ℹ️ **Note:** You must specify exactly one of `number`, `tcp`, and `udp`. */ udp?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdV6ProtocolTcp { /** * Local port */ localPort?: pulumi.Input; /** * Remote port */ remotePort?: pulumi.Input; } export interface IpsecTunnelAutoKeyProxyIdV6ProtocolUdp { /** * Local port */ localPort?: pulumi.Input; /** * Remote port */ remotePort?: pulumi.Input; } export interface IpsecTunnelTunnelMonitor { /** * Destination IP to send ICMP probe */ destinationIp: pulumi.Input; /** * Enable tunnel monitoring on this tunnel */ enable?: pulumi.Input; /** * Which proxy-id (or proxy-id-v6) the monitoring traffic will use */ proxyId?: pulumi.Input; } export interface KerberosServerProfileServer { /** * The Kerberos server IP address */ host: pulumi.Input; /** * The Kerberos server name */ name: pulumi.Input; /** * The Kerberos server port */ port?: pulumi.Input; } export interface Layer3SubinterfaceArp { /** * MAC address */ hwAddress?: pulumi.Input; /** * IP address */ name?: pulumi.Input; } export interface Layer3SubinterfaceDdnsConfig { /** * Certificate profile */ ddnsCertProfile: pulumi.Input; /** * Enable DDNS? */ ddnsEnabled?: pulumi.Input; /** * Ddns hostname */ ddnsHostname: pulumi.Input; /** * IP to register (static only) */ ddnsIp?: pulumi.Input; /** * Update interval (days) */ ddnsUpdateInterval?: pulumi.Input; /** * DDNS vendor */ ddnsVendor: pulumi.Input; /** * DDNS vendor */ ddnsVendorConfig: pulumi.Input; } export interface Layer3SubinterfaceDhcpClient { /** * Automatically create default route pointing to default gateway provided by server */ createDefaultRoute?: pulumi.Input; /** * Metric of the default route created */ defaultRouteMetric?: pulumi.Input; /** * Enable DHCP? */ enable?: pulumi.Input; /** * Layer3 sub interfaces DHCP Client Send hostname */ sendHostname?: pulumi.Input; } export interface Layer3SubinterfaceDhcpClientSendHostname { /** * Enable */ enable?: pulumi.Input; /** * Set interface hostname */ hostname?: pulumi.Input; } export interface Layer3SubinterfaceIp { /** * L3 sub-interface IP address(es) */ name: pulumi.Input; } export interface LdapServerProfileServer { /** * The LDAP server IP address */ address?: pulumi.Input; /** * The LDAP server name */ name?: pulumi.Input; /** * The LDAP server port */ port?: pulumi.Input; } export interface LldpProfileOptionTlvs { /** * Management address */ managementAddress?: pulumi.Input; /** * Option TLV Port Description */ portDescription?: pulumi.Input; /** * Option TLV System Capabilities */ systemCapabilities?: pulumi.Input; /** * Option TLV System Description */ systemDescription?: pulumi.Input; /** * Option TLV System Name */ systemName?: pulumi.Input; } export interface LldpProfileOptionTlvsManagementAddress { /** * Management address enabled */ enabled?: pulumi.Input; /** * Iplist */ iplists?: pulumi.Input[] | undefined>; } export interface LldpProfileOptionTlvsManagementAddressIplist { /** * Interface */ interface?: pulumi.Input; /** * IPv4 Address */ ipv4?: pulumi.Input; /** * IPv6 Address */ ipv6?: pulumi.Input; /** * Name */ name?: pulumi.Input; } export interface LogForwardingProfileMatchList { /** * Match profile description */ actionDesc?: pulumi.Input; /** * Filter match criteria */ filter: pulumi.Input; /** * Log type */ logType: pulumi.Input; /** * Name of the match profile */ name: pulumi.Input; /** * A list of email server profiles */ sendEmails?: pulumi.Input[] | undefined>; /** * A list of HTTP server profiles */ sendHttps?: pulumi.Input[] | undefined>; /** * A list of SNMP server profiles */ sendSnmptraps?: pulumi.Input[] | undefined>; /** * A list of syslog server profiles */ sendSyslogs?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrf { /** * Admin dists */ adminDists?: pulumi.Input; /** * Bgp */ bgp?: pulumi.Input; /** * Ecmp */ ecmp?: pulumi.Input; /** * Global vrid */ globalVrid?: pulumi.Input; /** * Interface */ interfaces?: pulumi.Input[] | undefined>; /** * Multicast */ multicast?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Ospf */ ospf?: pulumi.Input; /** * Ospfv3 */ ospfv3?: pulumi.Input; /** * Rib filter */ ribFilter?: pulumi.Input; /** * Rip */ rip?: pulumi.Input; /** * Routing table */ routingTable?: pulumi.Input; /** * Sdwan type */ sdwanType?: pulumi.Input; /** * Vr admin dists */ vrAdminDists?: pulumi.Input; /** * Zone name */ zoneName?: pulumi.Input; } export interface LogicalRouterVrfAdminDists { /** * Bgp external */ bgpExternal?: pulumi.Input; /** * Bgp internal */ bgpInternal?: pulumi.Input; /** * Bgp local */ bgpLocal?: pulumi.Input; /** * Ospf ext */ ospfExt?: pulumi.Input; /** * Ospf inter */ ospfInter?: pulumi.Input; /** * Ospf intra */ ospfIntra?: pulumi.Input; /** * Ospfv3 ext */ ospfv3Ext?: pulumi.Input; /** * Ospfv3 inter */ ospfv3Inter?: pulumi.Input; /** * Ospfv3 intra */ ospfv3Intra?: pulumi.Input; /** * Rip */ rip?: pulumi.Input; /** * Static */ static?: pulumi.Input; /** * Static ipv6 */ staticIpv6?: pulumi.Input; } export interface LogicalRouterVrfBgp { /** * Advertise network */ advertiseNetwork?: pulumi.Input; /** * Aggregate */ aggregate?: pulumi.Input; /** * Aggregate routes */ aggregateRoutes?: pulumi.Input[] | undefined>; /** * Allow redist default route */ allowRedistDefaultRoute?: pulumi.Input; /** * Always advertise network route */ alwaysAdvertiseNetworkRoute?: pulumi.Input; /** * As format */ asFormat?: pulumi.Input; /** * Confederation member as */ confederationMemberAs?: pulumi.Input; /** * Default local preference */ defaultLocalPreference?: pulumi.Input; /** * Ecmp multi as */ ecmpMultiAs?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Enforce first as */ enforceFirstAs?: pulumi.Input; /** * Fast external failover */ fastExternalFailover?: pulumi.Input; /** * Global bfd */ globalBfd?: pulumi.Input; /** * Graceful restart */ gracefulRestart?: pulumi.Input; /** * Graceful shutdown */ gracefulShutdown?: pulumi.Input; /** * Install route */ installRoute?: pulumi.Input; /** * Local as */ localAs?: pulumi.Input; /** * Med */ med?: pulumi.Input; /** * Peer group */ peerGroups?: pulumi.Input[] | undefined>; /** * Policy */ policy?: pulumi.Input; /** * Redist rules */ redistRules?: pulumi.Input[] | undefined>; /** * Redistribution profile */ redistributionProfile?: pulumi.Input; /** * Reject default route */ rejectDefaultRoute?: pulumi.Input; /** * Router id */ routerId?: pulumi.Input; } export interface LogicalRouterVrfBgpAdvertiseNetwork { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpAdvertiseNetworkIpv4 { /** * Network */ networks?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpAdvertiseNetworkIpv4Network { /** * Backdoor */ backdoor?: pulumi.Input; /** * Multicast */ multicast?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Unicast */ unicast?: pulumi.Input; } export interface LogicalRouterVrfBgpAdvertiseNetworkIpv6 { /** * Network */ networks?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpAdvertiseNetworkIpv6Network { /** * Name */ name: pulumi.Input; /** * Unicast */ unicast?: pulumi.Input; } export interface LogicalRouterVrfBgpAggregate { /** * Aggregate med */ aggregateMed?: pulumi.Input; } export interface LogicalRouterVrfBgpAggregateRoute { /** * As set */ asSet?: pulumi.Input; /** * Description */ description?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Same med */ sameMed?: pulumi.Input; /** * Summary only */ summaryOnly?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface LogicalRouterVrfBgpAggregateRouteType { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 * * > ℹ️ **Note:** You must specify exactly one of `ipv4` and `ipv6`. */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpAggregateRouteTypeIpv4 { /** * Attribute map */ attributeMap?: pulumi.Input; /** * Summary prefix */ summaryPrefix?: pulumi.Input; /** * Suppress map */ suppressMap?: pulumi.Input; } export interface LogicalRouterVrfBgpAggregateRouteTypeIpv6 { /** * Attribute map */ attributeMap?: pulumi.Input; /** * Summary prefix */ summaryPrefix?: pulumi.Input; /** * Suppress map */ suppressMap?: pulumi.Input; } export interface LogicalRouterVrfBgpGlobalBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfBgpGracefulRestart { /** * Enable */ enable?: pulumi.Input; /** * Local restart time */ localRestartTime?: pulumi.Input; /** * Max peer restart time */ maxPeerRestartTime?: pulumi.Input; /** * Stale route time */ staleRouteTime?: pulumi.Input; } export interface LogicalRouterVrfBgpMed { /** * Always compare med */ alwaysCompareMed?: pulumi.Input; /** * Deterministic med comparison */ deterministicMedComparison?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroup { /** * Address family */ addressFamily?: pulumi.Input; /** * Aggregated confed as path */ aggregatedConfedAsPath?: pulumi.Input; /** * Connection options */ connectionOptions?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Filtering profile */ filteringProfile?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Peer */ peers?: pulumi.Input[] | undefined>; /** * Soft reset with stored info */ softResetWithStoredInfo?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupAddressFamily { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupConnectionOptions { /** * Authentication */ authentication?: pulumi.Input; /** * Dampening */ dampening?: pulumi.Input; /** * Multihop */ multihop?: pulumi.Input; /** * Timers */ timers?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupFilteringProfile { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeer { /** * Bfd */ bfd?: pulumi.Input; /** * Connection options */ connectionOptions?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Enable mp bgp */ enableMpBgp?: pulumi.Input; /** * Enable sender side loop detection */ enableSenderSideLoopDetection?: pulumi.Input; /** * Inherit */ inherit?: pulumi.Input; /** * Local address */ localAddress?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Passive */ passive?: pulumi.Input; /** * Peer address */ peerAddress?: pulumi.Input; /** * Peer as */ peerAs?: pulumi.Input; /** * Peering type */ peeringType?: pulumi.Input; /** * Reflector client */ reflectorClient?: pulumi.Input; /** * Subsequent address family identifier */ subsequentAddressFamilyIdentifier?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerBfd { /** * Multihop */ multihop?: pulumi.Input; /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerBfdMultihop { /** * Min received ttl */ minReceivedTtl?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerConnectionOptions { /** * Authentication */ authentication?: pulumi.Input; /** * Dampening */ dampening?: pulumi.Input; /** * Hold time */ holdTime?: pulumi.Input; /** * Idle hold time */ idleHoldTime?: pulumi.Input; /** * Incoming bgp connection */ incomingBgpConnection?: pulumi.Input; /** * Keep alive interval */ keepAliveInterval?: pulumi.Input; /** * Max prefixes */ maxPrefixes?: pulumi.Input; /** * Min route adv interval */ minRouteAdvInterval?: pulumi.Input; /** * Multihop */ multihop?: pulumi.Input; /** * Open delay time */ openDelayTime?: pulumi.Input; /** * Outgoing bgp connection */ outgoingBgpConnection?: pulumi.Input; /** * Timers */ timers?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerConnectionOptionsIncomingBgpConnection { /** * Allow */ allow?: pulumi.Input; /** * Remote port */ remotePort?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerConnectionOptionsOutgoingBgpConnection { /** * Allow */ allow?: pulumi.Input; /** * Local port */ localPort?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerInherit { /** * No */ no?: pulumi.Input; /** * Yes * * > ℹ️ **Note:** You must specify exactly one of `no` and `yes`. */ yes?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerInheritNo { /** * Address family */ addressFamily?: pulumi.Input; /** * Filtering profile */ filteringProfile?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerInheritNoAddressFamily { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerInheritNoFilteringProfile { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerInheritYes { } export interface LogicalRouterVrfBgpPeerGroupPeerLocalAddress { /** * Interface */ interface?: pulumi.Input; /** * Ip */ ip?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerPeerAddress { /** * Fqdn */ fqdn?: pulumi.Input; /** * Ip * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ip`. */ ip?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupPeerSubsequentAddressFamilyIdentifier { /** * Multicast */ multicast?: pulumi.Input; /** * Unicast */ unicast?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupType { /** * Ebgp */ ebgp?: pulumi.Input; /** * Ebgp confed * * > ℹ️ **Note:** You must specify exactly one of `ebgp`, `ebgpConfed`, `ibgp`, and `ibgpConfed`. */ ebgpConfed?: pulumi.Input; /** * Ibgp * * > ℹ️ **Note:** You must specify exactly one of `ebgp`, `ebgpConfed`, `ibgp`, and `ibgpConfed`. */ ibgp?: pulumi.Input; /** * Ibgp confed * * > ℹ️ **Note:** You must specify exactly one of `ebgp`, `ebgpConfed`, `ibgp`, and `ibgpConfed`. */ ibgpConfed?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupTypeEbgp { /** * Export nexthop */ exportNexthop?: pulumi.Input; /** * Import nexthop */ importNexthop?: pulumi.Input; /** * Remove private as */ removePrivateAs?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupTypeEbgpConfed { /** * Export nexthop */ exportNexthop?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupTypeIbgp { /** * Export nexthop */ exportNexthop?: pulumi.Input; } export interface LogicalRouterVrfBgpPeerGroupTypeIbgpConfed { /** * Export nexthop */ exportNexthop?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicy { /** * Aggregation */ aggregation?: pulumi.Input; /** * Conditional advertisement */ conditionalAdvertisement?: pulumi.Input; /** * Export */ export?: pulumi.Input; /** * Import */ import?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregation { /** * Address */ addresses?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyAggregationAddress { /** * Advertise filters */ advertiseFilters?: pulumi.Input[] | undefined>; /** * Aggregate route attributes */ aggregateRouteAttributes?: pulumi.Input; /** * As set */ asSet?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Prefix */ prefix?: pulumi.Input; /** * Summary */ summary?: pulumi.Input; /** * Suppress filters */ suppressFilters?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAdvertiseFilter { /** * Enable */ enable?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAdvertiseFilterMatch { /** * Address prefix */ addressPrefixes?: pulumi.Input[] | undefined>; /** * Afi */ afi?: pulumi.Input; /** * As path */ asPath?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * From peer */ fromPeers?: pulumi.Input[] | undefined>; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthops?: pulumi.Input[] | undefined>; /** * Route table */ routeTable?: pulumi.Input; /** * Safi */ safi?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAdvertiseFilterMatchAddressPrefix { /** * Exact */ exact?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAdvertiseFilterMatchAsPath { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAdvertiseFilterMatchCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAdvertiseFilterMatchExtendedCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributes { /** * As path */ asPath?: pulumi.Input; /** * As path limit */ asPathLimit?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * Local preference */ localPreference?: pulumi.Input; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; /** * Origin */ origin?: pulumi.Input; /** * Weight */ weight?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesAsPath { /** * None */ none?: pulumi.Input; /** * Prepend * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ prepend?: pulumi.Input; /** * Remove * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ remove?: pulumi.Input; /** * Remove and prepend * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ removeAndPrepend?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesAsPathNone { } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesAsPathRemove { } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesCommunity { /** * Append */ appends?: pulumi.Input[] | undefined>; /** * None * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ none?: pulumi.Input; /** * Overwrite * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ overwrites?: pulumi.Input[] | undefined>; /** * Remove all * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeAll?: pulumi.Input; /** * Remove regex * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeRegex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesCommunityNone { } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesCommunityRemoveAll { } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunity { /** * Append */ appends?: pulumi.Input[] | undefined>; /** * None * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ none?: pulumi.Input; /** * Overwrite * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ overwrites?: pulumi.Input[] | undefined>; /** * Remove all * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeAll?: pulumi.Input; /** * Remove regex * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeRegex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityNone { } export interface LogicalRouterVrfBgpPolicyAggregationAddressAggregateRouteAttributesExtendedCommunityRemoveAll { } export interface LogicalRouterVrfBgpPolicyAggregationAddressSuppressFilter { /** * Enable */ enable?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressSuppressFilterMatch { /** * Address prefix */ addressPrefixes?: pulumi.Input[] | undefined>; /** * Afi */ afi?: pulumi.Input; /** * As path */ asPath?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * From peer */ fromPeers?: pulumi.Input[] | undefined>; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthops?: pulumi.Input[] | undefined>; /** * Route table */ routeTable?: pulumi.Input; /** * Safi */ safi?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressSuppressFilterMatchAddressPrefix { /** * Exact */ exact?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressSuppressFilterMatchAsPath { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressSuppressFilterMatchCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyAggregationAddressSuppressFilterMatchExtendedCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisement { /** * Policy */ policies?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicy { /** * Advertise filters */ advertiseFilters?: pulumi.Input[] | undefined>; /** * Enable */ enable?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Non exist filters */ nonExistFilters?: pulumi.Input[] | undefined>; /** * Used by */ usedBies?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyAdvertiseFilter { /** * Enable */ enable?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyAdvertiseFilterMatch { /** * Address prefix */ addressPrefixes?: pulumi.Input[] | undefined>; /** * Afi */ afi?: pulumi.Input; /** * As path */ asPath?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * From peer */ fromPeers?: pulumi.Input[] | undefined>; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthops?: pulumi.Input[] | undefined>; /** * Route table */ routeTable?: pulumi.Input; /** * Safi */ safi?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyAdvertiseFilterMatchAddressPrefix { /** * Exact */ exact?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyAdvertiseFilterMatchAsPath { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyAdvertiseFilterMatchCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyAdvertiseFilterMatchExtendedCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyNonExistFilter { /** * Enable */ enable?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyNonExistFilterMatch { /** * Address prefix */ addressPrefixes?: pulumi.Input[] | undefined>; /** * Afi */ afi?: pulumi.Input; /** * As path */ asPath?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * From peer */ fromPeers?: pulumi.Input[] | undefined>; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthops?: pulumi.Input[] | undefined>; /** * Route table */ routeTable?: pulumi.Input; /** * Safi */ safi?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyNonExistFilterMatchAddressPrefix { /** * Exact */ exact?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyNonExistFilterMatchAsPath { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyNonExistFilterMatchCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyConditionalAdvertisementPolicyNonExistFilterMatchExtendedCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExport { /** * Rules */ rules?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyExportRule { /** * Action */ action?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Used by */ usedBies?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyExportRuleAction { /** * Allow */ allow?: pulumi.Input; /** * Deny * * > ℹ️ **Note:** You must specify exactly one of `allow` and `deny`. */ deny?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllow { /** * Update */ update?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdate { /** * As path */ asPath?: pulumi.Input; /** * As path limit */ asPathLimit?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * Local preference */ localPreference?: pulumi.Input; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; /** * Origin */ origin?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateAsPath { /** * None */ none?: pulumi.Input; /** * Prepend * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ prepend?: pulumi.Input; /** * Remove * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ remove?: pulumi.Input; /** * Remove and prepend * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ removeAndPrepend?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateAsPathNone { } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateAsPathRemove { } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateCommunity { /** * Append */ appends?: pulumi.Input[] | undefined>; /** * None * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ none?: pulumi.Input; /** * Overwrite * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ overwrites?: pulumi.Input[] | undefined>; /** * Remove all * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeAll?: pulumi.Input; /** * Remove regex * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeRegex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateCommunityNone { } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateCommunityRemoveAll { } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateExtendedCommunity { /** * Append */ appends?: pulumi.Input[] | undefined>; /** * None * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ none?: pulumi.Input; /** * Overwrite * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ overwrites?: pulumi.Input[] | undefined>; /** * Remove all * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeAll?: pulumi.Input; /** * Remove regex * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeRegex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateExtendedCommunityNone { } export interface LogicalRouterVrfBgpPolicyExportRuleActionAllowUpdateExtendedCommunityRemoveAll { } export interface LogicalRouterVrfBgpPolicyExportRuleActionDeny { } export interface LogicalRouterVrfBgpPolicyExportRuleMatch { /** * Address prefix */ addressPrefixes?: pulumi.Input[] | undefined>; /** * Afi */ afi?: pulumi.Input; /** * As path */ asPath?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * From peer */ fromPeers?: pulumi.Input[] | undefined>; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthops?: pulumi.Input[] | undefined>; /** * Route table */ routeTable?: pulumi.Input; /** * Safi */ safi?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleMatchAddressPrefix { /** * Exact */ exact?: pulumi.Input; /** * Name */ name?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleMatchAsPath { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleMatchCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyExportRuleMatchExtendedCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImport { /** * Rules */ rules?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyImportRule { /** * Action */ action?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Match */ match?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Used by */ usedBies?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfBgpPolicyImportRuleAction { /** * Allow */ allow?: pulumi.Input; /** * Deny * * > ℹ️ **Note:** You must specify exactly one of `allow` and `deny`. */ deny?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllow { /** * Dampening */ dampening?: pulumi.Input; /** * Update */ update?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdate { /** * As path */ asPath?: pulumi.Input; /** * As path limit */ asPathLimit?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * Local preference */ localPreference?: pulumi.Input; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; /** * Origin */ origin?: pulumi.Input; /** * Weight */ weight?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateAsPath { /** * None */ none?: pulumi.Input; /** * Prepend * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ prepend?: pulumi.Input; /** * Remove * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ remove?: pulumi.Input; /** * Remove and prepend * * > ℹ️ **Note:** You must specify exactly one of `none`, `prepend`, `remove`, and `removeAndPrepend`. */ removeAndPrepend?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateAsPathNone { } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateAsPathRemove { } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateCommunity { /** * Append */ appends?: pulumi.Input[] | undefined>; /** * None * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ none?: pulumi.Input; /** * Overwrite * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ overwrites?: pulumi.Input[] | undefined>; /** * Remove all * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeAll?: pulumi.Input; /** * Remove regex * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeRegex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateCommunityNone { } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateCommunityRemoveAll { } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateExtendedCommunity { /** * Append */ appends?: pulumi.Input[] | undefined>; /** * None * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ none?: pulumi.Input; /** * Overwrite * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ overwrites?: pulumi.Input[] | undefined>; /** * Remove all * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeAll?: pulumi.Input; /** * Remove regex * * > ℹ️ **Note:** You must specify exactly one of `append`, `none`, `overwrite`, `removeAll`, and `removeRegex`. */ removeRegex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateExtendedCommunityNone { } export interface LogicalRouterVrfBgpPolicyImportRuleActionAllowUpdateExtendedCommunityRemoveAll { } export interface LogicalRouterVrfBgpPolicyImportRuleActionDeny { } export interface LogicalRouterVrfBgpPolicyImportRuleMatch { /** * Address prefix */ addressPrefixes?: pulumi.Input[] | undefined>; /** * Afi */ afi?: pulumi.Input; /** * As path */ asPath?: pulumi.Input; /** * Community */ community?: pulumi.Input; /** * Extended community */ extendedCommunity?: pulumi.Input; /** * From peer */ fromPeers?: pulumi.Input[] | undefined>; /** * Med */ med?: pulumi.Input; /** * Nexthop */ nexthops?: pulumi.Input[] | undefined>; /** * Route table */ routeTable?: pulumi.Input; /** * Safi */ safi?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleMatchAddressPrefix { /** * Exact */ exact?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleMatchAsPath { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleMatchCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpPolicyImportRuleMatchExtendedCommunity { /** * Regex */ regex?: pulumi.Input; } export interface LogicalRouterVrfBgpRedistRule { /** * Address family identifier */ addressFamilyIdentifier?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Route table */ routeTable?: pulumi.Input; /** * Set as path limit */ setAsPathLimit?: pulumi.Input; /** * Set community */ setCommunities?: pulumi.Input[] | undefined>; /** * Set extended community */ setExtendedCommunities?: pulumi.Input[] | undefined>; /** * Set local preference */ setLocalPreference?: pulumi.Input; /** * Set med */ setMed?: pulumi.Input; /** * Set origin */ setOrigin?: pulumi.Input; } export interface LogicalRouterVrfBgpRedistributionProfile { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfBgpRedistributionProfileIpv4 { /** * Unicast */ unicast?: pulumi.Input; } export interface LogicalRouterVrfBgpRedistributionProfileIpv6 { /** * Unicast */ unicast?: pulumi.Input; } export interface LogicalRouterVrfEcmp { /** * Algorithm */ algorithm?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Max path */ maxPath?: pulumi.Input; /** * Strict source path */ strictSourcePath?: pulumi.Input; /** * Symmetric return */ symmetricReturn?: pulumi.Input; } export interface LogicalRouterVrfEcmpAlgorithm { /** * Balanced round robin */ balancedRoundRobin?: pulumi.Input; /** * Ip hash * * > ℹ️ **Note:** You must specify exactly one of `balancedRoundRobin`, `ipHash`, `ipModulo`, and `weightedRoundRobin`. */ ipHash?: pulumi.Input; /** * Ip modulo * * > ℹ️ **Note:** You must specify exactly one of `balancedRoundRobin`, `ipHash`, `ipModulo`, and `weightedRoundRobin`. */ ipModulo?: pulumi.Input; /** * Weighted round robin * * > ℹ️ **Note:** You must specify exactly one of `balancedRoundRobin`, `ipHash`, `ipModulo`, and `weightedRoundRobin`. */ weightedRoundRobin?: pulumi.Input; } export interface LogicalRouterVrfEcmpAlgorithmBalancedRoundRobin { } export interface LogicalRouterVrfEcmpAlgorithmIpHash { /** * Hash seed */ hashSeed?: pulumi.Input; /** * Src only */ srcOnly?: pulumi.Input; /** * Use port */ usePort?: pulumi.Input; } export interface LogicalRouterVrfEcmpAlgorithmIpModulo { } export interface LogicalRouterVrfEcmpAlgorithmWeightedRoundRobin { /** * Interface */ interfaces?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfEcmpAlgorithmWeightedRoundRobinInterface { /** * Name */ name: pulumi.Input; /** * Weight */ weight?: pulumi.Input; } export interface LogicalRouterVrfMulticast { /** * Enable */ enable?: pulumi.Input; /** * Enable v6 */ enableV6?: pulumi.Input; /** * Igmp */ igmp?: pulumi.Input; /** * Interface group */ interfaceGroups?: pulumi.Input[] | undefined>; /** * Mode */ mode?: pulumi.Input; /** * Msdp */ msdp?: pulumi.Input; /** * Pim */ pim?: pulumi.Input; /** * Route ageout time */ routeAgeoutTime?: pulumi.Input; /** * Rp */ rp?: pulumi.Input; /** * Spt threshold */ sptThresholds?: pulumi.Input[] | undefined>; /** * Ssm address space */ ssmAddressSpaces?: pulumi.Input[] | undefined>; /** * Static route */ staticRoutes?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfMulticastIgmp { /** * Dynamic */ dynamic?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Static */ statics?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfMulticastIgmpDynamic { /** * Interface */ interfaces?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfMulticastIgmpDynamicInterface { /** * Group filter */ groupFilter?: pulumi.Input; /** * Max groups */ maxGroups?: pulumi.Input; /** * Max sources */ maxSources?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Query profile */ queryProfile?: pulumi.Input; /** * Robustness */ robustness?: pulumi.Input; /** * Router alert policing */ routerAlertPolicing?: pulumi.Input; /** * Version */ version?: pulumi.Input; } export interface LogicalRouterVrfMulticastIgmpStatic { /** * Group address */ groupAddress?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Source address */ sourceAddress?: pulumi.Input; } export interface LogicalRouterVrfMulticastInterfaceGroup { /** * Description */ description?: pulumi.Input; /** * Group permission */ groupPermission?: pulumi.Input; /** * Igmp */ igmp?: pulumi.Input; /** * Interface */ interfaces?: pulumi.Input[] | undefined>; /** * Name */ name: pulumi.Input; /** * Pim */ pim?: pulumi.Input; } export interface LogicalRouterVrfMulticastInterfaceGroupGroupPermission { /** * Any source multicast */ anySourceMulticasts?: pulumi.Input[] | undefined>; /** * Source specific multicast */ sourceSpecificMulticasts?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfMulticastInterfaceGroupGroupPermissionAnySourceMulticast { /** * Group address */ groupAddress?: pulumi.Input; /** * Included */ included?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfMulticastInterfaceGroupGroupPermissionSourceSpecificMulticast { /** * Group address */ groupAddress?: pulumi.Input; /** * Included */ included?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Source address */ sourceAddress?: pulumi.Input; } export interface LogicalRouterVrfMulticastInterfaceGroupIgmp { /** * Enable */ enable?: pulumi.Input; /** * Immediate leave */ immediateLeave?: pulumi.Input; /** * Last member query interval */ lastMemberQueryInterval?: pulumi.Input; /** * Max groups */ maxGroups?: pulumi.Input; /** * Max query response time */ maxQueryResponseTime?: pulumi.Input; /** * Max sources */ maxSources?: pulumi.Input; /** * Mode */ mode?: pulumi.Input; /** * Query interval */ queryInterval?: pulumi.Input; /** * Robustness */ robustness?: pulumi.Input; /** * Router alert policing */ routerAlertPolicing?: pulumi.Input; /** * Version */ version?: pulumi.Input; } export interface LogicalRouterVrfMulticastInterfaceGroupPim { /** * Allowed neighbors */ allowedNeighbors?: pulumi.Input[] | undefined>; /** * Assert interval */ assertInterval?: pulumi.Input; /** * Bsr border */ bsrBorder?: pulumi.Input; /** * Dr priority */ drPriority?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Hello interval */ helloInterval?: pulumi.Input; /** * Join prune interval */ joinPruneInterval?: pulumi.Input; } export interface LogicalRouterVrfMulticastInterfaceGroupPimAllowedNeighbor { /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfMulticastMsdp { /** * Enable */ enable?: pulumi.Input; /** * Global authentication */ globalAuthentication?: pulumi.Input; /** * Global timer */ globalTimer?: pulumi.Input; /** * Originator id */ originatorId?: pulumi.Input; /** * Peer */ peers?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfMulticastMsdpOriginatorId { /** * Interface */ interface?: pulumi.Input; /** * Ip */ ip?: pulumi.Input; } export interface LogicalRouterVrfMulticastMsdpPeer { /** * Authentication */ authentication?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Inbound sa filter */ inboundSaFilter?: pulumi.Input; /** * Local address */ localAddress?: pulumi.Input; /** * Max sa */ maxSa?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Outbound sa filter */ outboundSaFilter?: pulumi.Input; /** * Peer address */ peerAddress?: pulumi.Input; /** * Peer as */ peerAs?: pulumi.Input; } export interface LogicalRouterVrfMulticastMsdpPeerLocalAddress { /** * Interface */ interface?: pulumi.Input; /** * Ip */ ip?: pulumi.Input; } export interface LogicalRouterVrfMulticastMsdpPeerPeerAddress { /** * Fqdn */ fqdn?: pulumi.Input; /** * Ip * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ip`. */ ip?: pulumi.Input; } export interface LogicalRouterVrfMulticastPim { /** * Enable */ enable?: pulumi.Input; /** * Group permission */ groupPermission?: pulumi.Input; /** * If timer global */ ifTimerGlobal?: pulumi.Input; /** * Interface */ interfaces?: pulumi.Input[] | undefined>; /** * Route ageout time */ routeAgeoutTime?: pulumi.Input; /** * Rp */ rp?: pulumi.Input; /** * Rpf lookup mode */ rpfLookupMode?: pulumi.Input; /** * Spt threshold */ sptThresholds?: pulumi.Input[] | undefined>; /** * Ssm address space */ ssmAddressSpace?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimInterface { /** * Description */ description?: pulumi.Input; /** * Dr priority */ drPriority?: pulumi.Input; /** * If timer */ ifTimer?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Neighbor filter */ neighborFilter?: pulumi.Input; /** * Send bsm */ sendBsm?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimRp { /** * External rp */ externalRps?: pulumi.Input[] | undefined>; /** * Local rp */ localRp?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimRpExternalRp { /** * Group list */ groupList?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * Override */ override?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimRpLocalRp { /** * Candidate rp */ candidateRp?: pulumi.Input; /** * Static rp * * > ℹ️ **Note:** You must specify exactly one of `candidateRp` and `staticRp`. */ staticRp?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimRpLocalRpCandidateRp { /** * Address */ address?: pulumi.Input; /** * Advertisement interval */ advertisementInterval?: pulumi.Input; /** * Group list */ groupList?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * Priority */ priority?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimRpLocalRpStaticRp { /** * Address */ address?: pulumi.Input; /** * Group list */ groupList?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * Override */ override?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimSptThreshold { /** * Name */ name: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; } export interface LogicalRouterVrfMulticastPimSsmAddressSpace { /** * Group list */ groupList?: pulumi.Input; } export interface LogicalRouterVrfMulticastRp { /** * External rp */ externalRps?: pulumi.Input[] | undefined>; /** * Local rp */ localRp?: pulumi.Input; } export interface LogicalRouterVrfMulticastRpExternalRp { /** * Group addresses */ groupAddresses?: pulumi.Input[] | undefined>; /** * Name */ name: pulumi.Input; /** * Override */ override?: pulumi.Input; } export interface LogicalRouterVrfMulticastRpLocalRp { /** * Candidate rp */ candidateRp?: pulumi.Input; /** * Static rp * * > ℹ️ **Note:** You must specify exactly one of `candidateRp` and `staticRp`. */ staticRp?: pulumi.Input; } export interface LogicalRouterVrfMulticastRpLocalRpCandidateRp { /** * Address */ address?: pulumi.Input; /** * Advertisement interval */ advertisementInterval?: pulumi.Input; /** * Group addresses */ groupAddresses?: pulumi.Input[] | undefined>; /** * Interface */ interface?: pulumi.Input; /** * Priority */ priority?: pulumi.Input; } export interface LogicalRouterVrfMulticastRpLocalRpStaticRp { /** * Address */ address?: pulumi.Input; /** * Group addresses */ groupAddresses?: pulumi.Input[] | undefined>; /** * Interface */ interface?: pulumi.Input; /** * Override */ override?: pulumi.Input; } export interface LogicalRouterVrfMulticastSptThreshold { /** * Name */ name: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; } export interface LogicalRouterVrfMulticastSsmAddressSpace { /** * Group address */ groupAddress?: pulumi.Input; /** * Included */ included?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfMulticastStaticRoute { /** * Destination */ destination?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; /** * Preference */ preference?: pulumi.Input; } export interface LogicalRouterVrfMulticastStaticRouteNexthop { /** * Ip address */ ipAddress?: pulumi.Input; } export interface LogicalRouterVrfOspf { /** * Allow redist default route */ allowRedistDefaultRoute?: pulumi.Input; /** * Area */ areas?: pulumi.Input[] | undefined>; /** * Auth profile */ authProfiles?: pulumi.Input[] | undefined>; /** * Enable */ enable?: pulumi.Input; /** * Export rules */ exportRules?: pulumi.Input[] | undefined>; /** * Flood prevention */ floodPrevention?: pulumi.Input; /** * Global bfd */ globalBfd?: pulumi.Input; /** * Global if timer */ globalIfTimer?: pulumi.Input; /** * Graceful restart */ gracefulRestart?: pulumi.Input; /** * Redistribution profile */ redistributionProfile?: pulumi.Input; /** * Reject default route */ rejectDefaultRoute?: pulumi.Input; /** * Rfc1583 */ rfc1583?: pulumi.Input; /** * Router id */ routerId?: pulumi.Input; /** * Spf timer */ spfTimer?: pulumi.Input; /** * Vr timers */ vrTimers?: pulumi.Input; } export interface LogicalRouterVrfOspfArea { /** * Authentication */ authentication?: pulumi.Input; /** * Interface */ interfaces?: pulumi.Input[] | undefined>; /** * Name */ name: pulumi.Input; /** * Range */ ranges?: pulumi.Input[] | undefined>; /** * Type */ type?: pulumi.Input; /** * Virtual link */ virtualLinks?: pulumi.Input[] | undefined>; /** * Vr range */ vrRanges?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfOspfAreaInterface { /** * Authentication */ authentication?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Link type */ linkType?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Mtu ignore */ mtuIgnore?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Passive */ passive?: pulumi.Input; /** * Priority */ priority?: pulumi.Input; /** * Timing */ timing?: pulumi.Input; /** * Vr timing */ vrTiming?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaInterfaceBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaInterfaceLinkType { /** * Broadcast */ broadcast?: pulumi.Input; /** * P2mp * * > ℹ️ **Note:** You must specify exactly one of `broadcast`, `p2mp`, and `p2p`. */ p2mp?: pulumi.Input; /** * P2p * * > ℹ️ **Note:** You must specify exactly one of `broadcast`, `p2mp`, and `p2p`. */ p2p?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaInterfaceLinkTypeBroadcast { } export interface LogicalRouterVrfOspfAreaInterfaceLinkTypeP2mp { /** * Neighbor */ neighbors?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfOspfAreaInterfaceLinkTypeP2mpNeighbor { /** * Name */ name: pulumi.Input; /** * Priority */ priority?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaInterfaceLinkTypeP2p { } export interface LogicalRouterVrfOspfAreaInterfaceVrTiming { /** * Dead counts */ deadCounts?: pulumi.Input; /** * Gr delay */ grDelay?: pulumi.Input; /** * Hello interval */ helloInterval?: pulumi.Input; /** * Retransmit interval */ retransmitInterval?: pulumi.Input; /** * Transit delay */ transitDelay?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Substitute */ substitute?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaType { /** * Normal */ normal?: pulumi.Input; /** * Nssa * * > ℹ️ **Note:** You must specify exactly one of `normal`, `nssa`, and `stub`. */ nssa?: pulumi.Input; /** * Stub * * > ℹ️ **Note:** You must specify exactly one of `normal`, `nssa`, and `stub`. */ stub?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNormal { /** * Abr */ abr?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNormalAbr { /** * Export list */ exportList?: pulumi.Input; /** * Import list */ importList?: pulumi.Input; /** * Inbound filter list */ inboundFilterList?: pulumi.Input; /** * Outbound filter list */ outboundFilterList?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssa { /** * Abr */ abr?: pulumi.Input; /** * Accept summary */ acceptSummary?: pulumi.Input; /** * Default information originate */ defaultInformationOriginate?: pulumi.Input; /** * Default route */ defaultRoute?: pulumi.Input; /** * No summary */ noSummary?: pulumi.Input; /** * Nssa ext range */ nssaExtRanges?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfOspfAreaTypeNssaAbr { /** * Export list */ exportList?: pulumi.Input; /** * Import list */ importList?: pulumi.Input; /** * Inbound filter list */ inboundFilterList?: pulumi.Input; /** * Nssa ext range */ nssaExtRanges?: pulumi.Input[] | undefined>; /** * Outbound filter list */ outboundFilterList?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssaAbrNssaExtRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Route tag */ routeTag?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssaDefaultInformationOriginate { /** * Metric */ metric?: pulumi.Input; /** * Metric type */ metricType?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssaDefaultRoute { /** * Advertise */ advertise?: pulumi.Input; /** * Disable * * > ℹ️ **Note:** You must specify exactly one of `advertise` and `disable`. */ disable?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssaDefaultRouteAdvertise { /** * Metric */ metric?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssaDefaultRouteDisable { } export interface LogicalRouterVrfOspfAreaTypeNssaNssaExtRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Suppress */ suppress?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeNssaNssaExtRangeAdvertise { } export interface LogicalRouterVrfOspfAreaTypeNssaNssaExtRangeSuppress { } export interface LogicalRouterVrfOspfAreaTypeStub { /** * Abr */ abr?: pulumi.Input; /** * Accept summary */ acceptSummary?: pulumi.Input; /** * Default route */ defaultRoute?: pulumi.Input; /** * Default route metric */ defaultRouteMetric?: pulumi.Input; /** * No summary */ noSummary?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeStubAbr { /** * Export list */ exportList?: pulumi.Input; /** * Import list */ importList?: pulumi.Input; /** * Inbound filter list */ inboundFilterList?: pulumi.Input; /** * Outbound filter list */ outboundFilterList?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeStubDefaultRoute { /** * Advertise */ advertise?: pulumi.Input; /** * Disable * * > ℹ️ **Note:** You must specify exactly one of `advertise` and `disable`. */ disable?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeStubDefaultRouteAdvertise { /** * Metric */ metric?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaTypeStubDefaultRouteDisable { } export interface LogicalRouterVrfOspfAreaVirtualLink { /** * Authentication */ authentication?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Instance id */ instanceId?: pulumi.Input; /** * Interface id */ interfaceId?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Neighbor id */ neighborId?: pulumi.Input; /** * Passive */ passive?: pulumi.Input; /** * Timing */ timing?: pulumi.Input; /** * Transit area id */ transitAreaId?: pulumi.Input; /** * Vr timing */ vrTiming?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaVirtualLinkBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaVirtualLinkVrTiming { /** * Dead counts */ deadCounts?: pulumi.Input; /** * Hello interval */ helloInterval?: pulumi.Input; /** * Retransmit interval */ retransmitInterval?: pulumi.Input; /** * Transit delay */ transitDelay?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaVrRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Suppress */ suppress?: pulumi.Input; } export interface LogicalRouterVrfOspfAreaVrRangeAdvertise { } export interface LogicalRouterVrfOspfAreaVrRangeSuppress { } export interface LogicalRouterVrfOspfAuthProfile { /** * Md5 */ md5s?: pulumi.Input[] | undefined>; /** * Name */ name: pulumi.Input; /** * Password */ password?: pulumi.Input; } export interface LogicalRouterVrfOspfAuthProfileMd5 { /** * Key */ key?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Preferred */ preferred?: pulumi.Input; } export interface LogicalRouterVrfOspfExportRule { /** * Metric */ metric?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * New path type */ newPathType?: pulumi.Input; /** * New tag */ newTag?: pulumi.Input; } export interface LogicalRouterVrfOspfFloodPrevention { /** * Hello */ hello?: pulumi.Input; /** * Lsa */ lsa?: pulumi.Input; } export interface LogicalRouterVrfOspfFloodPreventionHello { /** * Enable */ enable?: pulumi.Input; /** * Max packet */ maxPacket?: pulumi.Input; } export interface LogicalRouterVrfOspfFloodPreventionLsa { /** * Enable */ enable?: pulumi.Input; /** * Max packet */ maxPacket?: pulumi.Input; } export interface LogicalRouterVrfOspfGlobalBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfOspfGracefulRestart { /** * Enable */ enable?: pulumi.Input; /** * Grace period */ gracePeriod?: pulumi.Input; /** * Helper enable */ helperEnable?: pulumi.Input; /** * Max neighbor restart time */ maxNeighborRestartTime?: pulumi.Input; /** * Strict l s a checking */ strictLsaChecking?: pulumi.Input; } export interface LogicalRouterVrfOspfVrTimers { /** * Lsa interval */ lsaInterval?: pulumi.Input; /** * Spf calculation delay */ spfCalculationDelay?: pulumi.Input; } export interface LogicalRouterVrfOspfv3 { /** * Allow redist default route */ allowRedistDefaultRoute?: pulumi.Input; /** * Area */ areas?: pulumi.Input[] | undefined>; /** * Auth profile */ authProfiles?: pulumi.Input[] | undefined>; /** * Disable transit traffic */ disableTransitTraffic?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Export rules */ exportRules?: pulumi.Input[] | undefined>; /** * Global bfd */ globalBfd?: pulumi.Input; /** * Global if timer */ globalIfTimer?: pulumi.Input; /** * Graceful restart */ gracefulRestart?: pulumi.Input; /** * Redistribution profile */ redistributionProfile?: pulumi.Input; /** * Reject default route */ rejectDefaultRoute?: pulumi.Input; /** * Router id */ routerId?: pulumi.Input; /** * Spf timer */ spfTimer?: pulumi.Input; /** * Vr timers */ vrTimers?: pulumi.Input; } export interface LogicalRouterVrfOspfv3Area { /** * Authentication */ authentication?: pulumi.Input; /** * Interface */ interfaces?: pulumi.Input[] | undefined>; /** * Name */ name: pulumi.Input; /** * Range */ ranges?: pulumi.Input[] | undefined>; /** * Type */ type?: pulumi.Input; /** * Virtual link */ virtualLinks?: pulumi.Input[] | undefined>; /** * Vr range */ vrRanges?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfOspfv3AreaInterface { /** * Authentication */ authentication?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Instance id */ instanceId?: pulumi.Input; /** * Link type */ linkType?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Mtu ignore */ mtuIgnore?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Neighbor */ neighbors?: pulumi.Input[] | undefined>; /** * Passive */ passive?: pulumi.Input; /** * Priority */ priority?: pulumi.Input; /** * Timing */ timing?: pulumi.Input; /** * Vr timing */ vrTiming?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaInterfaceBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaInterfaceLinkType { /** * Broadcast */ broadcast?: pulumi.Input; /** * P2mp * * > ℹ️ **Note:** You must specify exactly one of `broadcast`, `p2mp`, and `p2p`. */ p2mp?: pulumi.Input; /** * P2p * * > ℹ️ **Note:** You must specify exactly one of `broadcast`, `p2mp`, and `p2p`. */ p2p?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaInterfaceLinkTypeBroadcast { } export interface LogicalRouterVrfOspfv3AreaInterfaceLinkTypeP2mp { /** * Neighbor */ neighbors?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfOspfv3AreaInterfaceLinkTypeP2mpNeighbor { /** * Name */ name: pulumi.Input; /** * Priority */ priority?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaInterfaceLinkTypeP2p { } export interface LogicalRouterVrfOspfv3AreaInterfaceNeighbor { /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaInterfaceVrTiming { /** * Dead counts */ deadCounts?: pulumi.Input; /** * Gr delay */ grDelay?: pulumi.Input; /** * Hello interval */ helloInterval?: pulumi.Input; /** * Retransmit interval */ retransmitInterval?: pulumi.Input; /** * Transit delay */ transitDelay?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaType { /** * Normal */ normal?: pulumi.Input; /** * Nssa * * > ℹ️ **Note:** You must specify exactly one of `normal`, `nssa`, and `stub`. */ nssa?: pulumi.Input; /** * Stub * * > ℹ️ **Note:** You must specify exactly one of `normal`, `nssa`, and `stub`. */ stub?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNormal { /** * Abr */ abr?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNormalAbr { /** * Export list */ exportList?: pulumi.Input; /** * Import list */ importList?: pulumi.Input; /** * Inbound filter list */ inboundFilterList?: pulumi.Input; /** * Outbound filter list */ outboundFilterList?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssa { /** * Abr */ abr?: pulumi.Input; /** * Accept summary */ acceptSummary?: pulumi.Input; /** * Default information originate */ defaultInformationOriginate?: pulumi.Input; /** * Default route */ defaultRoute?: pulumi.Input; /** * No summary */ noSummary?: pulumi.Input; /** * Nssa ext range */ nssaExtRanges?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfOspfv3AreaTypeNssaAbr { /** * Export list */ exportList?: pulumi.Input; /** * Import list */ importList?: pulumi.Input; /** * Inbound filter list */ inboundFilterList?: pulumi.Input; /** * Nssa ext range */ nssaExtRanges?: pulumi.Input[] | undefined>; /** * Outbound filter list */ outboundFilterList?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssaAbrNssaExtRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Route tag */ routeTag?: pulumi.Input; /** * Suppress */ suppress?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssaAbrNssaExtRangeAdvertise { } export interface LogicalRouterVrfOspfv3AreaTypeNssaAbrNssaExtRangeSuppress { } export interface LogicalRouterVrfOspfv3AreaTypeNssaDefaultInformationOriginate { /** * Metric */ metric?: pulumi.Input; /** * Metric type */ metricType?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssaDefaultRoute { /** * Advertise */ advertise?: pulumi.Input; /** * Disable * * > ℹ️ **Note:** You must specify exactly one of `advertise` and `disable`. */ disable?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssaDefaultRouteAdvertise { /** * Metric */ metric?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssaDefaultRouteDisable { } export interface LogicalRouterVrfOspfv3AreaTypeNssaNssaExtRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Route tag */ routeTag?: pulumi.Input; /** * Suppress */ suppress?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeNssaNssaExtRangeAdvertise { } export interface LogicalRouterVrfOspfv3AreaTypeNssaNssaExtRangeSuppress { } export interface LogicalRouterVrfOspfv3AreaTypeStub { /** * Abr */ abr?: pulumi.Input; /** * Accept summary */ acceptSummary?: pulumi.Input; /** * Default route */ defaultRoute?: pulumi.Input; /** * Default route metric */ defaultRouteMetric?: pulumi.Input; /** * No summary */ noSummary?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeStubAbr { /** * Export list */ exportList?: pulumi.Input; /** * Import list */ importList?: pulumi.Input; /** * Inbound filter list */ inboundFilterList?: pulumi.Input; /** * Outbound filter list */ outboundFilterList?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeStubDefaultRoute { /** * Advertise */ advertise?: pulumi.Input; /** * Disable * * > ℹ️ **Note:** You must specify exactly one of `advertise` and `disable`. */ disable?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeStubDefaultRouteAdvertise { /** * Metric */ metric?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaTypeStubDefaultRouteDisable { } export interface LogicalRouterVrfOspfv3AreaVirtualLink { /** * Authentication */ authentication?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Instance id */ instanceId?: pulumi.Input; /** * Interface id */ interfaceId?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Neighbor id */ neighborId?: pulumi.Input; /** * Passive */ passive?: pulumi.Input; /** * Timing */ timing?: pulumi.Input; /** * Transit area id */ transitAreaId?: pulumi.Input; /** * Vr timing */ vrTiming?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaVirtualLinkBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaVirtualLinkVrTiming { /** * Dead counts */ deadCounts?: pulumi.Input; /** * Hello interval */ helloInterval?: pulumi.Input; /** * Retransmit interval */ retransmitInterval?: pulumi.Input; /** * Transit delay */ transitDelay?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaVrRange { /** * Advertise */ advertise?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Suppress */ suppress?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AreaVrRangeAdvertise { } export interface LogicalRouterVrfOspfv3AreaVrRangeSuppress { } export interface LogicalRouterVrfOspfv3AuthProfile { /** * Ah */ ah?: pulumi.Input; /** * Esp */ esp?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Spi */ spi?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileAh { /** * Md5 */ md5?: pulumi.Input; /** * Sha1 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha1?: pulumi.Input; /** * Sha256 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha256?: pulumi.Input; /** * Sha384 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha384?: pulumi.Input; /** * Sha512 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha512?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileAhMd5 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileAhSha1 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileAhSha256 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileAhSha384 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileAhSha512 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEsp { /** * Authentication */ authentication?: pulumi.Input; /** * Encryption */ encryption?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthentication { /** * Md5 */ md5?: pulumi.Input; /** * None * * > ℹ️ **Note:** You must specify exactly one of `md5`, `none`, `sha1`, `sha256`, `sha384`, and `sha512`. */ none?: pulumi.Input; /** * Sha1 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `none`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha1?: pulumi.Input; /** * Sha256 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `none`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha256?: pulumi.Input; /** * Sha384 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `none`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha384?: pulumi.Input; /** * Sha512 * * > ℹ️ **Note:** You must specify exactly one of `md5`, `none`, `sha1`, `sha256`, `sha384`, and `sha512`. */ sha512?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthenticationMd5 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthenticationNone { } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthenticationSha1 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthenticationSha256 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthenticationSha384 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspAuthenticationSha512 { /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3AuthProfileEspEncryption { /** * Algorithm */ algorithm?: pulumi.Input; /** * Key */ key?: pulumi.Input; } export interface LogicalRouterVrfOspfv3ExportRule { /** * Metric */ metric?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * New path type */ newPathType?: pulumi.Input; /** * New tag */ newTag?: pulumi.Input; } export interface LogicalRouterVrfOspfv3GlobalBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfOspfv3GracefulRestart { /** * Enable */ enable?: pulumi.Input; /** * Grace period */ gracePeriod?: pulumi.Input; /** * Helper enable */ helperEnable?: pulumi.Input; /** * Max neighbor restart time */ maxNeighborRestartTime?: pulumi.Input; /** * Strict l s a checking */ strictLsaChecking?: pulumi.Input; } export interface LogicalRouterVrfOspfv3VrTimers { /** * Lsa interval */ lsaInterval?: pulumi.Input; /** * Spf calculation delay */ spfCalculationDelay?: pulumi.Input; } export interface LogicalRouterVrfRibFilter { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv4 { /** * Bgp */ bgp?: pulumi.Input; /** * Ospf */ ospf?: pulumi.Input; /** * Rip */ rip?: pulumi.Input; /** * Static */ static?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv4Bgp { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv4Ospf { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv4Rip { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv4Static { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv6 { /** * Bgp */ bgp?: pulumi.Input; /** * Ospfv3 */ ospfv3?: pulumi.Input; /** * Static */ static?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv6Bgp { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv6Ospfv3 { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRibFilterIpv6Static { /** * Route map */ routeMap?: pulumi.Input; } export interface LogicalRouterVrfRip { /** * Auth profile */ authProfile?: pulumi.Input; /** * Default information originate */ defaultInformationOriginate?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Global bfd */ globalBfd?: pulumi.Input; /** * Global inbound distribute list */ globalInboundDistributeList?: pulumi.Input; /** * Global outbound distribute list */ globalOutboundDistributeList?: pulumi.Input; /** * Global timer */ globalTimer?: pulumi.Input; /** * Interface */ interfaces?: pulumi.Input[] | undefined>; /** * Redistribution profile */ redistributionProfile?: pulumi.Input; } export interface LogicalRouterVrfRipGlobalBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfRipGlobalInboundDistributeList { /** * Access list */ accessList?: pulumi.Input; } export interface LogicalRouterVrfRipGlobalOutboundDistributeList { /** * Access list */ accessList?: pulumi.Input; } export interface LogicalRouterVrfRipInterface { /** * Authentication */ authentication?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Interface inbound distribute list */ interfaceInboundDistributeList?: pulumi.Input; /** * Interface outbound distribute list */ interfaceOutboundDistributeList?: pulumi.Input; /** * Mode */ mode?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Split horizon */ splitHorizon?: pulumi.Input; } export interface LogicalRouterVrfRipInterfaceBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfRipInterfaceInterfaceInboundDistributeList { /** * Access list */ accessList?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; } export interface LogicalRouterVrfRipInterfaceInterfaceOutboundDistributeList { /** * Access list */ accessList?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; } export interface LogicalRouterVrfRoutingTable { /** * Ip */ ip?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIp { /** * Static route */ staticRoutes?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfRoutingTableIpStaticRoute { /** * Admin dist */ adminDist?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Destination */ destination?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; /** * Path monitor */ pathMonitor?: pulumi.Input; /** * Route table */ routeTable?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpStaticRouteBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpStaticRouteNexthop { /** * Discard */ discard?: pulumi.Input; /** * Fqdn * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ fqdn?: pulumi.Input; /** * Ip address * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ ipAddress?: pulumi.Input; /** * Ipv6 address * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ ipv6Address?: pulumi.Input; /** * Next lr * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ nextLr?: pulumi.Input; /** * Next vr * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ nextVr?: pulumi.Input; /** * Receive * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ receive?: pulumi.Input; /** * Tunnel * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipAddress`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ tunnel?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpStaticRouteNexthopDiscard { } export interface LogicalRouterVrfRoutingTableIpStaticRouteNexthopReceive { } export interface LogicalRouterVrfRoutingTableIpStaticRoutePathMonitor { /** * Enable */ enable?: pulumi.Input; /** * Failure condition */ failureCondition?: pulumi.Input; /** * Hold time */ holdTime?: pulumi.Input; /** * Monitor destinations */ monitorDestinations?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfRoutingTableIpStaticRoutePathMonitorMonitorDestination { /** * Count */ count?: pulumi.Input; /** * Destination */ destination?: pulumi.Input; /** * Destination fqdn */ destinationFqdn?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Interval */ interval?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Source */ source?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpStaticRouteRouteTable { /** * Both */ both?: pulumi.Input; /** * Multicast * * > ℹ️ **Note:** You must specify exactly one of `both`, `multicast`, `noInstall`, and `unicast`. */ multicast?: pulumi.Input; /** * No install * * > ℹ️ **Note:** You must specify exactly one of `both`, `multicast`, `noInstall`, and `unicast`. */ noInstall?: pulumi.Input; /** * Unicast * * > ℹ️ **Note:** You must specify exactly one of `both`, `multicast`, `noInstall`, and `unicast`. */ unicast?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpStaticRouteRouteTableBoth { } export interface LogicalRouterVrfRoutingTableIpStaticRouteRouteTableMulticast { } export interface LogicalRouterVrfRoutingTableIpStaticRouteRouteTableNoInstall { } export interface LogicalRouterVrfRoutingTableIpStaticRouteRouteTableUnicast { } export interface LogicalRouterVrfRoutingTableIpv6 { /** * Static route */ staticRoutes?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfRoutingTableIpv6StaticRoute { /** * Admin dist */ adminDist?: pulumi.Input; /** * Bfd */ bfd?: pulumi.Input; /** * Destination */ destination?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; /** * Metric */ metric?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; /** * Option */ option?: pulumi.Input; /** * Path monitor */ pathMonitor?: pulumi.Input; /** * Route table */ routeTable?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteBfd { /** * Profile */ profile?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteNexthop { /** * Discard */ discard?: pulumi.Input; /** * Fqdn * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ fqdn?: pulumi.Input; /** * Ipv6 address * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ ipv6Address?: pulumi.Input; /** * Next lr * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ nextLr?: pulumi.Input; /** * Next vr * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ nextVr?: pulumi.Input; /** * Receive * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ receive?: pulumi.Input; /** * Tunnel * * > ℹ️ **Note:** You must specify exactly one of `discard`, `fqdn`, `ipv6Address`, `nextLr`, `nextVr`, `receive`, and `tunnel`. */ tunnel?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteNexthopDiscard { } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteNexthopReceive { } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteOption { /** * Passive */ passive?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteOptionPassive { } export interface LogicalRouterVrfRoutingTableIpv6StaticRoutePathMonitor { /** * Enable */ enable?: pulumi.Input; /** * Failure condition */ failureCondition?: pulumi.Input; /** * Hold time */ holdTime?: pulumi.Input; /** * Monitor destinations */ monitorDestinations?: pulumi.Input[] | undefined>; } export interface LogicalRouterVrfRoutingTableIpv6StaticRoutePathMonitorMonitorDestination { /** * Count */ count?: pulumi.Input; /** * Destination */ destination?: pulumi.Input; /** * Destination fqdn */ destinationFqdn?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Interval */ interval?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Source */ source?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteRouteTable { /** * Both */ both?: pulumi.Input; /** * Multicast */ multicast?: pulumi.Input; /** * No install */ noInstall?: pulumi.Input; /** * Unicast */ unicast?: pulumi.Input; } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteRouteTableBoth { } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteRouteTableMulticast { } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteRouteTableNoInstall { } export interface LogicalRouterVrfRoutingTableIpv6StaticRouteRouteTableUnicast { } export interface LogicalRouterVrfVrAdminDists { /** * Ebgp */ ebgp?: pulumi.Input; /** * Ibgp */ ibgp?: pulumi.Input; /** * Ospf ext */ ospfExt?: pulumi.Input; /** * Ospf int */ ospfInt?: pulumi.Input; /** * Ospfv3 ext */ ospfv3Ext?: pulumi.Input; /** * Ospfv3 int */ ospfv3Int?: pulumi.Input; /** * Rip */ rip?: pulumi.Input; /** * Static */ static?: pulumi.Input; /** * Static ipv6 */ staticIpv6?: pulumi.Input; } export interface LoopbackInterfaceIp { /** * Loopback IP address(es) */ name: pulumi.Input; } export interface LoopbackInterfaceIpv6 { /** * IPv6 Address Parent for loopback interface */ addresses?: pulumi.Input[] | undefined>; /** * Enable IPv6 for loopback interface */ enabled?: pulumi.Input; /** * Interface ID for loopback interface */ interfaceId?: pulumi.Input; } export interface LoopbackInterfaceIpv6Address { /** * Anycast for loopback interface */ anycast?: pulumi.Input; /** * Enable Address on Interface for loopback interface */ enableOnInterface?: pulumi.Input; /** * IPv6 Address for loopback interface */ name?: pulumi.Input; /** * Use interface ID as host portion for loopback interface */ prefix?: pulumi.Input; } export interface LoopbackInterfaceIpv6AddressAnycast { } export interface LoopbackInterfaceIpv6AddressPrefix { } export interface ManagementInterfaceManagementInterface { /** * Default gateway */ defaultGateway?: pulumi.Input; /** * IP address */ ipAddress?: pulumi.Input; /** * IP type */ mgmtType?: pulumi.Input; /** * MTU */ mtu?: pulumi.Input; /** * Netmask */ netmask?: pulumi.Input; /** * Permitting IP addresses */ permittedIps?: pulumi.Input[] | undefined>; /** * Network services */ service?: pulumi.Input; /** * Speed and duplex */ speedDuplex?: pulumi.Input; } export interface ManagementInterfaceManagementInterfaceMgmtType { /** * Dhcp client */ dhcpClient?: pulumi.Input; /** * Static * * > ℹ️ **Note:** You must specify exactly one of `dhcpClient` and `static`. */ static?: pulumi.Input; } export interface ManagementInterfaceManagementInterfaceMgmtTypeDhcpClient { /** * Accept DHCP server provided domain name */ acceptDhcpDomain?: pulumi.Input; /** * Accept DHCP server provided hostname */ acceptDhcpHostname?: pulumi.Input; /** * Send client ID */ sendClientId?: pulumi.Input; /** * Send hostname */ sendHostname?: pulumi.Input; } export interface ManagementInterfaceManagementInterfaceMgmtTypeStatic { } export interface ManagementInterfaceManagementInterfacePermittedIp { /** * Description */ description?: pulumi.Input; /** * IP address */ name?: pulumi.Input; } export interface ManagementInterfaceManagementInterfaceService { /** * HTTP */ disableHttp?: pulumi.Input; /** * HTTP OCSP */ disableHttpOcsp?: pulumi.Input; /** * HTTPS */ disableHttps?: pulumi.Input; /** * Ping */ disableIcmp?: pulumi.Input; /** * SNMP */ disableSnmp?: pulumi.Input; /** * SSH */ disableSsh?: pulumi.Input; /** * Telnet */ disableTelnet?: pulumi.Input; /** * User-ID */ disableUseridService?: pulumi.Input; /** * User-ID syslog listener over SSL */ disableUseridSyslogListenerSsl?: pulumi.Input; /** * User-ID syslog listener over UDP */ disableUseridSyslogListenerUdp?: pulumi.Input; } export interface MfaServerMfaVendorType { /** * Integration with [Duo Security](https://duo.com/product) */ duoSecurityV2?: pulumi.Input; /** * Integration with [Okta Adaptive MFA](https://www.okta.com/products/adaptive-multi-factor-authentication) * * > ℹ️ **Note:** You must specify exactly one of `duoSecurityV2`, `oktaAdaptiveV1`, `pingIdentityV1`, and `rsaSecuridAccessV1`. */ oktaAdaptiveV1?: pulumi.Input; /** * Integation with [Ping Identity](https://www.pingidentity.com/en/platform.html) * * > ℹ️ **Note:** You must specify exactly one of `duoSecurityV2`, `oktaAdaptiveV1`, `pingIdentityV1`, and `rsaSecuridAccessV1`. */ pingIdentityV1?: pulumi.Input; /** * Integration with [RSA SecurID](https://www.rsa.com/products/securid/) * * > ℹ️ **Note:** You must specify exactly one of `duoSecurityV2`, `oktaAdaptiveV1`, `pingIdentityV1`, and `rsaSecuridAccessV1`. */ rsaSecuridAccessV1?: pulumi.Input; } export interface MfaServerMfaVendorTypeDuoSecurityV2 { /** * Duo Security API hostname */ duoApiHost: pulumi.Input; /** * Duo Security API base URI */ duoBaseuri: pulumi.Input; /** * Duo Security integration key */ duoIntegrationKey: pulumi.Input; /** * Duo Security secret key */ duoSecretKey: pulumi.Input; /** * Duo Security timeout (seconds) */ duoTimeout: pulumi.Input; } export interface MfaServerMfaVendorTypeOktaAdaptiveV1 { /** * Okta API hostname */ oktaApiHost: pulumi.Input; /** * Okta baseuri */ oktaBaseuri: pulumi.Input; /** * Okta organization */ oktaOrg: pulumi.Input; /** * Okta timeout (seconds) */ oktaTimeout: pulumi.Input; /** * Okta API token */ oktaToken: pulumi.Input; } export interface MfaServerMfaVendorTypePingIdentityV1 { /** * Ping Identity API hostname */ pingApiHost: pulumi.Input; /** * Ping Identity API base URI */ pingBaseuri: pulumi.Input; /** * Ping Identity client organization ID */ pingOrgAlias?: pulumi.Input; /** * Ping Identity timeout (seconds) */ pingTimeout: pulumi.Input; /** * Ping Identity API token */ pingToken: pulumi.Input; /** * Ping Identity Base64 key */ pingUseBase64Key: pulumi.Input; } export interface MfaServerMfaVendorTypeRsaSecuridAccessV1 { /** * RSA SecurID access ID */ rsaAccessid?: pulumi.Input; /** * RSA SecurID access key */ rsaAccesskey?: pulumi.Input; /** * RSA SecurID hostname */ rsaApiHost?: pulumi.Input; /** * RSA SecurID assurance level */ rsaAssurancepolicyid?: pulumi.Input; /** * RSA SecurID API base URI */ rsaBaseuri?: pulumi.Input; /** * RSA SecurID timeout (seconds) */ rsaTimeout?: pulumi.Input; } export interface MotdBannerSettingMotdAndBanner { /** * Banner footer */ bannerFooter?: pulumi.Input; /** * The following list details the supported values and their colors. */ bannerFooterColor?: pulumi.Input; /** * The following list details the supported values and their colors. */ bannerFooterTextColor?: pulumi.Input; /** * Banner header */ bannerHeader?: pulumi.Input; /** * The following list details the supported values and their colors. */ bannerHeaderColor?: pulumi.Input; /** * Banner header footer match */ bannerHeaderFooterMatch?: pulumi.Input; /** * The following list details the supported values and their colors. */ bannerHeaderTextColor?: pulumi.Input; /** * Message */ message?: pulumi.Input; /** * The following list details the supported values and their colors. */ motdColor?: pulumi.Input; /** * Motd do not display again */ motdDoNotDisplayAgain?: pulumi.Input; /** * Motd enable */ motdEnable?: pulumi.Input; /** * Motd title */ motdTitle?: pulumi.Input; /** * Severity */ severity?: pulumi.Input; } export interface NatRuleDestinationTranslation { /** * DNS rewrite */ dnsRewrite?: pulumi.Input; /** * Translated destination IP address */ translatedAddress?: pulumi.Input; /** * Translated destination port */ translatedPort?: pulumi.Input; } export interface NatRuleDestinationTranslationDnsRewrite { /** * Direction */ direction?: pulumi.Input; } export interface NatRuleDynamicDestinationTranslation { /** * Distribution method */ distribution?: pulumi.Input; /** * Translated destination IP address */ translatedAddress?: pulumi.Input; /** * Translated destination port */ translatedPort?: pulumi.Input; } export interface NatRuleSourceTranslation { /** * Dynamic IP */ dynamicIp?: pulumi.Input; /** * Dynamic IP and port */ dynamicIpAndPort?: pulumi.Input; /** * Static IP */ staticIp?: pulumi.Input; } export interface NatRuleSourceTranslationDynamicIp { /** * Fallback */ fallback?: pulumi.Input; /** * Translated IP addresses */ translatedAddresses?: pulumi.Input[] | undefined>; } export interface NatRuleSourceTranslationDynamicIpAndPort { /** * Translated source interface */ interfaceAddress?: pulumi.Input; /** * Translated source IP addresses */ translatedAddresses?: pulumi.Input[] | undefined>; } export interface NatRuleSourceTranslationDynamicIpAndPortInterfaceAddress { /** * Floating IP address */ floatingIp?: pulumi.Input; /** * Interface name */ interface?: pulumi.Input; /** * Translated source IP address */ ip?: pulumi.Input; } export interface NatRuleSourceTranslationDynamicIpFallback { /** * Fallback interface */ interfaceAddress?: pulumi.Input; /** * Fallback IP addresses */ translatedAddresses?: pulumi.Input[] | undefined>; } export interface NatRuleSourceTranslationDynamicIpFallbackInterfaceAddress { /** * Floating IP address */ floatingIp?: pulumi.Input; /** * Interface name */ interface?: pulumi.Input; /** * IP address */ ip?: pulumi.Input; } export interface NatRuleSourceTranslationStaticIp { /** * Bi directional */ biDirectional?: pulumi.Input; /** * Translated IP address */ translatedAddress?: pulumi.Input; } export interface OspfAuthProfileMd5 { /** * MD5 hash */ key?: pulumi.Input; /** * Key ID */ name?: pulumi.Input; /** * Preferred? */ preferred?: pulumi.Input; } export interface PbfRuleAction { /** * Discard */ discard?: pulumi.Input; /** * Forward * * > ℹ️ **Note:** You must specify exactly one of `discard`, `forward`, and `noPbf`. */ forward?: pulumi.Input; /** * No pbf * * > ℹ️ **Note:** You must specify exactly one of `discard`, `forward`, and `noPbf`. */ noPbf?: pulumi.Input; } export interface PbfRuleActionDiscard { } export interface PbfRuleActionForward { /** * Egress interface */ egressInterface?: pulumi.Input; /** * Monitor */ monitor?: pulumi.Input; /** * Nexthop */ nexthop?: pulumi.Input; } export interface PbfRuleActionForwardMonitor { /** * Disable this rule if nexthop/monitor ip is unreachable? */ disableIfUnreachable?: pulumi.Input; /** * Monitor IP address */ ipAddress?: pulumi.Input; /** * Monitoring profile */ profile?: pulumi.Input; } export interface PbfRuleActionForwardNexthop { /** * Next hop FQDN */ fqdn?: pulumi.Input; /** * Next hop IP address * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ipAddress`. */ ipAddress?: pulumi.Input; } export interface PbfRuleActionNoPbf { } export interface PbfRuleEnforceSymmetricReturn { /** * Enforce symmetric return? */ enabled?: pulumi.Input; /** * Next hop IP addresses */ nexthopAddressLists?: pulumi.Input[] | undefined>; } export interface PbfRuleEnforceSymmetricReturnNexthopAddressList { /** * Next hop IP address */ name?: pulumi.Input; } export interface PbfRuleFrom { /** * Source interfaces */ interfaces?: pulumi.Input[] | undefined>; /** * Source zones * * > ℹ️ **Note:** You must specify exactly one of `interface` and `zone`. */ zones?: pulumi.Input[] | undefined>; } export interface QosPolicyRuleAction { /** * Class */ class?: pulumi.Input; } export interface QosPolicyRuleDscpTos { /** * Codepoints */ codepoints?: pulumi.Input[] | undefined>; } export interface QosPolicyRuleDscpTosCodepoint { /** * Name */ name?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface QosPolicyRuleDscpTosCodepointType { /** * Af */ af?: pulumi.Input; /** * Cs * * > ℹ️ **Note:** You must specify exactly one of `af`, `cs`, `custom`, `ef`, and `tos`. */ cs?: pulumi.Input; /** * Custom * * > ℹ️ **Note:** You must specify exactly one of `af`, `cs`, `custom`, `ef`, and `tos`. */ custom?: pulumi.Input; /** * Ef * * > ℹ️ **Note:** You must specify exactly one of `af`, `cs`, `custom`, `ef`, and `tos`. */ ef?: pulumi.Input; /** * Tos * * > ℹ️ **Note:** You must specify exactly one of `af`, `cs`, `custom`, `ef`, and `tos`. */ tos?: pulumi.Input; } export interface QosPolicyRuleDscpTosCodepointTypeAf { /** * Codepoint */ codepoint?: pulumi.Input; } export interface QosPolicyRuleDscpTosCodepointTypeCs { /** * Codepoint */ codepoint?: pulumi.Input; } export interface QosPolicyRuleDscpTosCodepointTypeCustom { /** * Codepoint */ codepoint?: pulumi.Input; } export interface QosPolicyRuleDscpTosCodepointTypeCustomCodepoint { /** * Binary value */ binaryValue?: pulumi.Input; /** * Codepoint name */ codepointName?: pulumi.Input; } export interface QosPolicyRuleDscpTosCodepointTypeEf { } export interface QosPolicyRuleDscpTosCodepointTypeTos { /** * Codepoint */ codepoint?: pulumi.Input; } export interface QosProfileAggregateBandwidth { /** * guaranteed sending bandwidth in mbps */ egressGuaranteed?: pulumi.Input; /** * max sending bandwidth in mbps */ egressMax?: pulumi.Input; } export interface QosProfileClassBandwidthType { /** * Mbps */ mbps?: pulumi.Input; /** * Percentage * * > ℹ️ **Note:** You must specify exactly one of `mbps` and `percentage`. */ percentage?: pulumi.Input; } export interface QosProfileClassBandwidthTypeMbps { /** * QoS setting for traffic classes */ classes?: pulumi.Input[] | undefined>; } export interface QosProfileClassBandwidthTypeMbpsClass { /** * Class bandwidth */ classBandwidth?: pulumi.Input; /** * Traffic class */ name?: pulumi.Input; /** * traffic class priority */ priority?: pulumi.Input; } export interface QosProfileClassBandwidthTypeMbpsClassClassBandwidth { /** * guaranteed sending bandwidth in mbps */ egressGuaranteed?: pulumi.Input; /** * max sending bandwidth in mbps */ egressMax?: pulumi.Input; } export interface QosProfileClassBandwidthTypePercentage { /** * QoS setting for traffic classes */ classes?: pulumi.Input[] | undefined>; } export interface QosProfileClassBandwidthTypePercentageClass { /** * Class bandwidth */ classBandwidth?: pulumi.Input; /** * Traffic class */ name?: pulumi.Input; /** * traffic class priority */ priority?: pulumi.Input; } export interface QosProfileClassBandwidthTypePercentageClassClassBandwidth { /** * guaranteed sending bandwidth in percentage */ egressGuaranteed?: pulumi.Input; /** * max sending bandwidth in percentage */ egressMax?: pulumi.Input; } export interface RadiusServerProfileProtocol { /** * C h a p */ chap?: pulumi.Input; /** * E a p t t l s with p a p */ eapTtlsWithPap?: pulumi.Input; /** * P a p */ pap?: pulumi.Input; /** * P e a p m s c h a pv2 */ peapMschaPv2?: pulumi.Input; /** * P e a p with g t c */ peapWithGtc?: pulumi.Input; } export interface RadiusServerProfileProtocolChap { } export interface RadiusServerProfileProtocolEapTtlsWithPap { /** * Anon outer id */ anonOuterId?: pulumi.Input; /** * Radius cert profile */ radiusCertProfile?: pulumi.Input; } export interface RadiusServerProfileProtocolPap { } export interface RadiusServerProfileProtocolPeapMschaPv2 { /** * Allow pwd change */ allowPwdChange?: pulumi.Input; /** * Anon outer id */ anonOuterId?: pulumi.Input; /** * Radius cert profile */ radiusCertProfile?: pulumi.Input; } export interface RadiusServerProfileProtocolPeapWithGtc { /** * Anon outer id */ anonOuterId?: pulumi.Input; /** * Radius cert profile */ radiusCertProfile?: pulumi.Input; } export interface RadiusServerProfileServer { /** * The IP address of the RADIUS server */ ipAddress?: pulumi.Input; /** * The name of the RADIUS server */ name?: pulumi.Input; /** * The RADIUS server port */ port?: pulumi.Input; /** * The RADIUS secret */ secret?: pulumi.Input; } export interface RegionGeoLocation { /** * The latitudinal position of the region */ latitude: pulumi.Input; /** * The longitudinal postition of the region */ longitude: pulumi.Input; } export interface RemoteNetworkEcmpTunnel { /** * Ipsec tunnel */ ipsecTunnel: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Protocol */ protocol: pulumi.Input; } export interface RemoteNetworkEcmpTunnelProtocol { /** * Bgp */ bgp?: pulumi.Input; } export interface RemoteNetworkEcmpTunnelProtocolBgp { /** * Do not export routes? */ doNotExportRoutes?: pulumi.Input; /** * Enable BGP peering? */ enable?: pulumi.Input; /** * Local peer IP address */ localIpAddress?: pulumi.Input; /** * Originate default route? */ originateDefaultRoute?: pulumi.Input; /** * BGP peer ASN */ peerAs?: pulumi.Input; /** * Remote peer IP address */ peerIpAddress?: pulumi.Input; /** * Route exchange types */ peeringType?: pulumi.Input; /** * BGP peering secret */ secret?: pulumi.Input; /** * Summarize mobile user routes? */ summarizeMobileUserRoutes?: pulumi.Input; } export interface RemoteNetworkProtocol { /** * Bgp */ bgp?: pulumi.Input; /** * secondary bgp routing as bgp*peer */ bgpPeer?: pulumi.Input; } export interface RemoteNetworkProtocolBgp { /** * Do not export routes? */ doNotExportRoutes?: pulumi.Input; /** * Enable BGP peering? */ enable?: pulumi.Input; /** * Local peer IP address */ localIpAddress?: pulumi.Input; /** * Originate default route? */ originateDefaultRoute?: pulumi.Input; /** * BGP peer ASN */ peerAs?: pulumi.Input; /** * Remote peer IP address */ peerIpAddress?: pulumi.Input; /** * Route exchange types */ peeringType?: pulumi.Input; /** * BGP peering secret */ secret?: pulumi.Input; /** * Summarize mobile user routes? */ summarizeMobileUserRoutes?: pulumi.Input; } export interface RemoteNetworkProtocolBgpPeer { /** * Local peer IP address (secondary WAN) */ localIpAddress?: pulumi.Input; /** * Remote peer IP address (secondary WAN) */ peerIpAddress?: pulumi.Input; /** * Same peer IP address as primary WAN */ sameAsPrimary?: pulumi.Input; /** * BGP peering secret (secondary WAN) */ secret?: pulumi.Input; } export interface RouteAccessListType { /** * Ipv4 */ ipv4?: pulumi.Input; } export interface RouteAccessListTypeIpv4 { /** * IPv4 access lists */ ipv4Entries?: pulumi.Input[] | undefined>; } export interface RouteAccessListTypeIpv4Ipv4Entry { /** * Action */ action?: pulumi.Input; /** * Destination address */ destinationAddress?: pulumi.Input; /** * Sequence number */ name?: pulumi.Input; /** * Source address */ sourceAddress?: pulumi.Input; } export interface RouteAccessListTypeIpv4Ipv4EntryDestinationAddress { /** * Destination IP address */ address?: pulumi.Input; /** * Entry */ entry?: pulumi.Input; } export interface RouteAccessListTypeIpv4Ipv4EntryDestinationAddressEntry { /** * Destination IP address */ address?: pulumi.Input; /** * Destination IP wildcard */ wildcard?: pulumi.Input; } export interface RouteAccessListTypeIpv4Ipv4EntrySourceAddress { /** * Source IP address */ address?: pulumi.Input; /** * Entry */ entry?: pulumi.Input; } export interface RouteAccessListTypeIpv4Ipv4EntrySourceAddressEntry { /** * Source IP address */ address?: pulumi.Input; /** * Source IP wildcard */ wildcard?: pulumi.Input; } export interface RouteCommunityListType { /** * Extended */ extended?: pulumi.Input; /** * Large * * > ℹ️ **Note:** You must specify exactly one of `extended`, `large`, and `regular`. */ large?: pulumi.Input; /** * Regular * * > ℹ️ **Note:** You must specify exactly one of `extended`, `large`, and `regular`. */ regular?: pulumi.Input; } export interface RouteCommunityListTypeExtended { /** * Extended community lists */ extendedEntries?: pulumi.Input[] | undefined>; } export interface RouteCommunityListTypeExtendedExtendedEntry { /** * Action */ action?: pulumi.Input; /** * Extended community regular expression */ lcRegexes?: pulumi.Input[] | undefined>; /** * Sequence number */ name?: pulumi.Input; } export interface RouteCommunityListTypeLarge { /** * Large community lists */ largeEntries?: pulumi.Input[] | undefined>; } export interface RouteCommunityListTypeLargeLargeEntry { /** * Action */ action?: pulumi.Input; /** * Large community regular expression */ lcRegexes?: pulumi.Input[] | undefined>; /** * Sequence number */ name?: pulumi.Input; } export interface RouteCommunityListTypeRegular { /** * Regular community lists */ regularEntries?: pulumi.Input[] | undefined>; } export interface RouteCommunityListTypeRegularRegularEntry { /** * Action */ action?: pulumi.Input; /** * Communities */ communities?: pulumi.Input[] | undefined>; /** * Sequence number */ name?: pulumi.Input; } export interface RoutePathAccessListAspathEntry { /** * Action */ action?: pulumi.Input; /** * AS path regular expression */ aspathRegex?: pulumi.Input; /** * Sequence number */ name?: pulumi.Input; } export interface RoutePrefixListType { /** * Ipv4 */ ipv4: pulumi.Input; } export interface RoutePrefixListTypeIpv4 { /** * IPv4 prefix lists */ ipv4Entries?: pulumi.Input[] | undefined>; } export interface RoutePrefixListTypeIpv4Ipv4Entry { /** * Action */ action?: pulumi.Input; /** * Sequence number */ name?: pulumi.Input; /** * Prefix */ prefix?: pulumi.Input; } export interface RoutePrefixListTypeIpv4Ipv4EntryPrefix { /** * Entry */ entry?: pulumi.Input; /** * Network * * > ℹ️ **Note:** You must specify exactly one of `entry` and `network`. */ network?: pulumi.Input; } export interface RoutePrefixListTypeIpv4Ipv4EntryPrefixEntry { /** * Greater than or equal to */ greaterThanOrEqual?: pulumi.Input; /** * Less than or equal to */ lessThanOrEqual?: pulumi.Input; /** * Network */ network?: pulumi.Input; } export interface ScepProfileAlgorithm { /** * Key length (bits) */ rsa: pulumi.Input; } export interface ScepProfileAlgorithmRsa { /** * Rsa nbits */ rsaNbits: pulumi.Input; } export interface ScepProfileCertificateAttributes { /** * Dnsname */ dnsname?: pulumi.Input; /** * Rfc822name * * > ℹ️ **Note:** You must specify exactly one of `dnsname`, `rfc822name`, and `uniformResourceIdentifier`. */ rfc822name?: pulumi.Input; /** * Uniform resource identifier * * > ℹ️ **Note:** You must specify exactly one of `dnsname`, `rfc822name`, and `uniformResourceIdentifier`. */ uniformResourceIdentifier?: pulumi.Input; } export interface ScepProfileScepChallenge { /** * Dynamic */ dynamic?: pulumi.Input; /** * Challenge to use for SCEP server on mobile clients * * > ℹ️ **Note:** You must specify exactly one of `dynamic`, `fixed`, and `none`. */ fixed?: pulumi.Input; /** * No OTP * * > ℹ️ **Note:** You must specify exactly one of `dynamic`, `fixed`, and `none`. */ none?: pulumi.Input; } export interface ScepProfileScepChallengeDynamic { /** * OTP server URL */ otpServerUrl?: pulumi.Input; /** * OTP password */ password?: pulumi.Input; /** * OTP username */ username?: pulumi.Input; } export interface ScepProfileScepChallengeNone { } export interface ScheduleScheduleType { /** * Non recurring */ nonRecurrings?: pulumi.Input[] | undefined>; /** * Recurring * * > ℹ️ **Note:** You must specify exactly one of `nonRecurring` and `recurring`. */ recurring?: pulumi.Input; } export interface ScheduleScheduleTypeRecurring { /** * Daily */ dailies?: pulumi.Input[] | undefined>; /** * Weekly * * > ℹ️ **Note:** You must specify exactly one of `daily` and `weekly`. */ weekly?: pulumi.Input; } export interface ScheduleScheduleTypeRecurringWeekly { /** * Friday */ fridays?: pulumi.Input[] | undefined>; /** * Monday */ mondays?: pulumi.Input[] | undefined>; /** * Saturday */ saturdays?: pulumi.Input[] | undefined>; /** * Sunday */ sundays?: pulumi.Input[] | undefined>; /** * Thursday */ thursdays?: pulumi.Input[] | undefined>; /** * Tuesday */ tuesdays?: pulumi.Input[] | undefined>; /** * Wednesday */ wednesdays?: pulumi.Input[] | undefined>; } export interface SdwanErrorCorrectionProfileMode { /** * Forward error correction */ forwardErrorCorrection?: pulumi.Input; /** * Packet duplication * * > ℹ️ **Note:** You must specify exactly one of `forwardErrorCorrection` and `packetDuplication`. */ packetDuplication?: pulumi.Input; } export interface SdwanErrorCorrectionProfileModeForwardErrorCorrection { /** * Ratio */ ratio: pulumi.Input; /** * Recovery duration */ recoveryDuration: pulumi.Input; } export interface SdwanErrorCorrectionProfileModePacketDuplication { /** * Recovery duration pd */ recoveryDurationPd: pulumi.Input; } export interface SdwanPathQualityProfileMetric { /** * Jitter */ jitter: pulumi.Input; /** * Latency */ latency: pulumi.Input; /** * Pkt loss */ pktLoss?: pulumi.Input; } export interface SdwanPathQualityProfileMetricJitter { /** * Jitter sensitivity */ sensitivity: pulumi.Input; /** * Jitter threshold (ms) */ threshold: pulumi.Input; } export interface SdwanPathQualityProfileMetricLatency { /** * Latency sensitivity */ sensitivity: pulumi.Input; /** * Latency threshold (ms) */ threshold: pulumi.Input; } export interface SdwanPathQualityProfileMetricPktLoss { /** * Packet loss sensitivity */ sensitivity: pulumi.Input; /** * Packet loss threshold (percentage) */ threshold: pulumi.Input; } export interface SdwanRuleAction { /** * Traffic dstribution profile */ trafficDistributionProfile: pulumi.Input; } export interface SdwanSaasQualityProfileMonitorMode { /** * Adaptive */ adaptive?: pulumi.Input; /** * Http https * * > ℹ️ **Note:** You must specify exactly one of `adaptive`, `httpHttps`, and `staticIp`. */ httpHttps?: pulumi.Input; /** * Static ip * * > ℹ️ **Note:** You must specify exactly one of `adaptive`, `httpHttps`, and `staticIp`. */ staticIp?: pulumi.Input; } export interface SdwanSaasQualityProfileMonitorModeAdaptive { } export interface SdwanSaasQualityProfileMonitorModeHttpHttps { /** * Monitored URL */ monitoredUrl: pulumi.Input; /** * Probe interval (seconds) */ probeInterval: pulumi.Input; } export interface SdwanSaasQualityProfileMonitorModeStaticIp { /** * Fqdn */ fqdn?: pulumi.Input; /** * List of IP addresses * * > ℹ️ **Note:** You must specify exactly one of `fqdn` and `ipAddress`. */ ipAddresses?: pulumi.Input[] | undefined>; } export interface SdwanSaasQualityProfileMonitorModeStaticIpFqdn { /** * FQDN */ fqdnName: pulumi.Input; /** * Probe interval (seconds) */ probeInterval: pulumi.Input; } export interface SdwanSaasQualityProfileMonitorModeStaticIpIpAddress { /** * IP address */ name: pulumi.Input; /** * Probe interval (seconds) */ probeInterval: pulumi.Input; } export interface SdwanTrafficDistributionProfileLinkTag { /** * Link-Tag used for identifying a set of interfaces */ name: pulumi.Input; /** * Weight (percentage) (only used when `traffic-distribution` is `Weighted Session Distribution`) */ weight?: pulumi.Input; } export interface SecurityRuleAllowUrlCategory { /** * Additional action */ additionalAction?: pulumi.Input; /** * Credential enforcement */ credentialEnforcement?: pulumi.Input; /** * Decryption */ decryption?: pulumi.Input; /** * Dlp */ dlp?: pulumi.Input; /** * File control */ fileControl?: pulumi.Input; /** * Isolation profiles */ isolationProfiles?: pulumi.Input; /** * Name */ name?: pulumi.Input; } export interface SecurityRuleAllowUrlCategoryFileControl { /** * Download */ download?: pulumi.Input; /** * Upload */ upload?: pulumi.Input; } export interface SecurityRuleAllowWebApplication { /** * App id */ appId?: pulumi.Input; /** * Application function */ applicationFunctions?: pulumi.Input[] | undefined>; /** * Dlp */ dlp?: pulumi.Input; /** * File control */ fileControl?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * Saas enterprise control */ saasEnterpriseControl?: pulumi.Input; /** * Saas tenant list */ saasTenantLists?: pulumi.Input[] | undefined>; /** * Saas user list */ saasUserLists?: pulumi.Input[] | undefined>; /** * Tenant control */ tenantControl?: pulumi.Input; /** * Type */ type?: pulumi.Input; } export interface SecurityRuleAllowWebApplicationFileControl { /** * Download */ download?: pulumi.Input; /** * Upload */ upload?: pulumi.Input; } export interface SecurityRuleAllowWebApplicationSaasEnterpriseControl { /** * Consumer access */ consumerAccess?: pulumi.Input; /** * Enterprise access */ enterpriseAccess?: pulumi.Input; } export interface SecurityRuleAllowWebApplicationSaasEnterpriseControlConsumerAccess { /** * Enable */ enable?: pulumi.Input; } export interface SecurityRuleAllowWebApplicationSaasEnterpriseControlEnterpriseAccess { /** * Enable */ enable?: pulumi.Input; /** * Tenant restrictions */ tenantRestrictions?: pulumi.Input[] | undefined>; } export interface SecurityRuleAllowWebApplicationTenantControl { /** * Allowed activities */ allowedActivities?: pulumi.Input[] | undefined>; /** * Blocked activities */ blockedActivities?: pulumi.Input[] | undefined>; /** * Parent application */ parentApplication?: pulumi.Input; /** * Tenants */ tenants?: pulumi.Input[] | undefined>; } export interface SecurityRuleDefaultProfileSettings { /** * Dlp */ dlp?: pulumi.Input; /** * File control */ fileControl?: pulumi.Input; } export interface SecurityRuleDefaultProfileSettingsFileControl { /** * Download */ download?: pulumi.Input; /** * Upload */ upload?: pulumi.Input; } export interface SecurityRuleLogSettings { /** * Log sessions */ logSessions?: pulumi.Input; } export interface SecurityRuleProfileSetting { /** * The security profile group */ groups?: pulumi.Input[] | undefined>; } export interface SecurityRuleSecuritySettings { /** * Anti spyware */ antiSpyware?: pulumi.Input; /** * Virus and wildfire analysis */ virusAndWildfireAnalysis?: pulumi.Input; /** * Vulnerability */ vulnerability?: pulumi.Input; } export interface ServiceConnectionBgpPeer { /** * Local ip address */ localIpAddress?: pulumi.Input; /** * Local ipv6 address */ localIpv6Address?: pulumi.Input; /** * Peer ip address */ peerIpAddress?: pulumi.Input; /** * Peer ipv6 address */ peerIpv6Address?: pulumi.Input; /** * Same peer IP address for SC */ sameAsPrimary?: pulumi.Input; /** * Secret */ secret?: pulumi.Input; } export interface ServiceConnectionProtocol { /** * Bgp */ bgp?: pulumi.Input; } export interface ServiceConnectionProtocolBgp { /** * Do not export routes */ doNotExportRoutes?: pulumi.Input; /** * Enable */ enable?: pulumi.Input; /** * Fast failover */ fastFailover?: pulumi.Input; /** * Local ip address */ localIpAddress?: pulumi.Input; /** * Originate default route */ originateDefaultRoute?: pulumi.Input; /** * Peer as */ peerAs: pulumi.Input; /** * Peer ip address */ peerIpAddress?: pulumi.Input; /** * Secret */ secret?: pulumi.Input; /** * Summarize mobile user routes */ summarizeMobileUserRoutes?: pulumi.Input; } export interface ServiceConnectionQos { /** * Enable */ enable?: pulumi.Input; /** * Qos profile */ qosProfile?: pulumi.Input; } export interface ServiceProtocol { /** * Tcp */ tcp?: pulumi.Input; /** * Udp * * > ℹ️ **Note:** You must specify exactly one of `tcp` and `udp`. */ udp?: pulumi.Input; } export interface ServiceProtocolTcp { /** * Override */ override?: pulumi.Input; /** * Port */ port: pulumi.Input; /** * Source port */ sourcePort?: pulumi.Input; } export interface ServiceProtocolTcpOverride { /** * tcp session half-close timeout value (in second) */ halfcloseTimeout?: pulumi.Input; /** * tcp session timeout value (in second) */ timeout?: pulumi.Input; /** * tcp session time-wait timeout value (in second) */ timewaitTimeout?: pulumi.Input; } export interface ServiceProtocolUdp { /** * Override */ override?: pulumi.Input; /** * Port */ port: pulumi.Input; /** * Source port */ sourcePort?: pulumi.Input; } export interface ServiceProtocolUdpOverride { /** * udp session timeout value (in second) */ timeout?: pulumi.Input; } export interface ServiceRouteRoute { /** * Destination */ destinations?: pulumi.Input[] | undefined>; /** * Service */ services?: pulumi.Input[] | undefined>; } export interface ServiceRouteRouteDestination { /** * Name */ name?: pulumi.Input; /** * Source */ source?: pulumi.Input; } export interface ServiceRouteRouteDestinationSource { /** * Address */ address?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; } export interface ServiceRouteRouteService { /** * The follow list details the accepted `name` values and their corresponding service description. */ name?: pulumi.Input; /** * Source */ source?: pulumi.Input; /** * Source v6 */ sourceV6?: pulumi.Input; } export interface ServiceRouteRouteServiceSource { /** * Address */ address?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; } export interface ServiceRouteRouteServiceSourceV6 { /** * Address */ address?: pulumi.Input; /** * Interface */ interface?: pulumi.Input; } export interface ServiceSettingServices { /** * Dns setting */ dnsSetting?: pulumi.Input; /** * Fqdn refresh time */ fqdnRefreshTime?: pulumi.Input; /** * Fqdn stale entry timeout */ fqdnStaleEntryTimeout?: pulumi.Input; /** * Inline cloud proxy */ inlineCloudProxy?: pulumi.Input; /** * Lcaas use proxy */ lcaasUseProxy?: pulumi.Input; /** * Ntp servers */ ntpServers?: pulumi.Input; /** * Secure proxy password */ secureProxyPassword?: pulumi.Input; /** * Secure proxy port */ secureProxyPort?: pulumi.Input; /** * Secure proxy server */ secureProxyServer?: pulumi.Input; /** * Secure proxy user */ secureProxyUser?: pulumi.Input; /** * Server verification */ serverVerification?: pulumi.Input; /** * Update server */ updateServer?: pulumi.Input; } export interface ServiceSettingServicesDnsSetting { /** * Dns proxy object */ dnsProxyObject?: pulumi.Input; /** * Servers * * > ℹ️ **Note:** You must specify exactly one of `dnsProxyObject` and `servers`. */ servers?: pulumi.Input; } export interface ServiceSettingServicesDnsSettingServers { /** * Primary */ primary?: pulumi.Input; /** * Secondary */ secondary?: pulumi.Input; } export interface ServiceSettingServicesNtpServers { /** * Primary ntp server */ primaryNtpServer?: pulumi.Input; /** * Secondary ntp server */ secondaryNtpServer?: pulumi.Input; } export interface ServiceSettingServicesNtpServersPrimaryNtpServer { /** * Authentication type */ authenticationType?: pulumi.Input; /** * Ntp server address */ ntpServerAddress?: pulumi.Input; } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationType { /** * Autokey */ autokey?: pulumi.Input; /** * None * * > ℹ️ **Note:** You must specify exactly one of `autokey`, `none`, and `symmetricKey`. */ none?: pulumi.Input; /** * Symmetric key * * > ℹ️ **Note:** You must specify exactly one of `autokey`, `none`, and `symmetricKey`. */ symmetricKey?: pulumi.Input; } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationTypeAutokey { } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationTypeNone { } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationTypeSymmetricKey { /** * Algorithm */ algorithm?: pulumi.Input; /** * Key id */ keyId?: pulumi.Input; } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationTypeSymmetricKeyAlgorithm { /** * Md5 */ md5?: pulumi.Input; /** * Sha1 */ sha1?: pulumi.Input; } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationTypeSymmetricKeyAlgorithmMd5 { /** * Authentication key */ authenticationKey?: pulumi.Input; } export interface ServiceSettingServicesNtpServersPrimaryNtpServerAuthenticationTypeSymmetricKeyAlgorithmSha1 { /** * Authentication key */ authenticationKey?: pulumi.Input; } export interface ServiceSettingServicesNtpServersSecondaryNtpServer { /** * Authentication type */ authenticationType?: pulumi.Input; /** * Ntp server address */ ntpServerAddress?: pulumi.Input; } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationType { /** * Autokey */ autokey?: pulumi.Input; /** * None * * > ℹ️ **Note:** You must specify exactly one of `autokey`, `none`, and `symmetricKey`. */ none?: pulumi.Input; /** * Symmetric key * * > ℹ️ **Note:** You must specify exactly one of `autokey`, `none`, and `symmetricKey`. */ symmetricKey?: pulumi.Input; } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationTypeAutokey { } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationTypeNone { } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKey { /** * Algorithm */ algorithm?: pulumi.Input; /** * Key id */ keyId?: pulumi.Input; } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKeyAlgorithm { /** * Md5 */ md5?: pulumi.Input; /** * Sha1 */ sha1?: pulumi.Input; } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKeyAlgorithmMd5 { /** * Authentication key */ authenticationKey?: pulumi.Input; } export interface ServiceSettingServicesNtpServersSecondaryNtpServerAuthenticationTypeSymmetricKeyAlgorithmSha1 { /** * Authentication key */ authenticationKey?: pulumi.Input; } export interface SessionSettingSessionSettings { /** * Enable accelerated aging */ acceleratedAgingEnable?: pulumi.Input; /** * Accelerated aging scaling factor */ acceleratedAgingScalingFactor?: pulumi.Input; /** * Accelerated aging threshold */ acceleratedAgingThreshold?: pulumi.Input; /** * Config */ config?: pulumi.Input; /** * Enable DHCP broadcast session */ dhcpBcastSessionOn?: pulumi.Input; /** * Enable ERSPAN support */ erspan?: pulumi.Input; /** * ICMP unreachable packet rate (per second) */ icmpUnreachableRate?: pulumi.Input; /** * ICMPv6 rate limiting */ icmpv6RateLimit?: pulumi.Input; /** * Enable IPv6 firewalling */ ipv6Firewalling?: pulumi.Input; /** * Enable jumbo frame support */ jumboFrame?: pulumi.Input; /** * Multicast route setup buffer size */ maxPendingMcastPktsPerSession?: pulumi.Input; /** * Multicast route setup buffering */ multicastRouteSetupBuffering?: pulumi.Input; /** * Nat */ nat?: pulumi.Input; /** * Nat64 */ nat64?: pulumi.Input; /** * Activate (%) */ packetBufferProtectionActivate?: pulumi.Input; /** * Alert (%) */ packetBufferProtectionAlert?: pulumi.Input; /** * Block countdown threshold (%) */ packetBufferProtectionBlockCountdown?: pulumi.Input; /** * Block duration (seconds) */ packetBufferProtectionBlockDurationTime?: pulumi.Input; /** * Block hold time (seconds) */ packetBufferProtectionBlockHoldTime?: pulumi.Input; /** * Enable packet buffer protection */ packetBufferProtectionEnable?: pulumi.Input; /** * Latency activate (milliseconds) */ packetBufferProtectionLatencyActivate?: pulumi.Input; /** * Latency alert (milliseconds) */ packetBufferProtectionLatencyAlert?: pulumi.Input; /** * Block countdown threshold (milliseconds) */ packetBufferProtectionLatencyBlockCountdown?: pulumi.Input; /** * Latency max tolerate (milliseconds) */ packetBufferProtectionLatencyMaxTolerate?: pulumi.Input; /** * Packet buffer protection monitor only */ packetBufferProtectionMonitorOnly?: pulumi.Input; /** * Enabled latency-based activation */ packetBufferProtectionUseLatency?: pulumi.Input; } export interface SessionSettingSessionSettingsConfig { /** * Rematch all sessions on config policy change */ rematch?: pulumi.Input; } export interface SessionSettingSessionSettingsIcmpv6RateLimit { /** * ICMPv6 token bucket size */ bucketSize?: pulumi.Input; /** * ICMPv6 error packet pate (per second) */ packetRate?: pulumi.Input; } export interface SessionSettingSessionSettingsJumboFrame { /** * Global MTU */ mtu?: pulumi.Input; } export interface SessionSettingSessionSettingsNat { /** * NAT oversubscription rate */ dippOversub?: pulumi.Input; } export interface SessionSettingSessionSettingsNat64 { /** * NAT64 IPv6 minimum network MTU */ ipv6MinNetworkMtu?: pulumi.Input; } export interface SessionTimeoutSessionTimeouts { /** * Captive Portal (seconds) */ timeoutCaptivePortal?: pulumi.Input; /** * Default timeout (seconds) */ timeoutDefault?: pulumi.Input; /** * Discard default (seconds) */ timeoutDiscardDefault?: pulumi.Input; /** * Discard TCP (seconds) */ timeoutDiscardTcp?: pulumi.Input; /** * Discard UDP (seconds) */ timeoutDiscardUdp?: pulumi.Input; /** * ICMP (seconds) */ timeoutIcmp?: pulumi.Input; /** * Scan (seconds) */ timeoutScan?: pulumi.Input; /** * TCP (seconds) */ timeoutTcp?: pulumi.Input; /** * TCP Half Closed (seconds) */ timeoutTcpHalfClosed?: pulumi.Input; /** * TCP Time Wait (seconds) */ timeoutTcpTimeWait?: pulumi.Input; /** * Unverified RST (seconds) */ timeoutTcpUnverifiedRst?: pulumi.Input; /** * TCP handshake (seconds) */ timeoutTcphandshake?: pulumi.Input; /** * TCP init (seconds) */ timeoutTcpinit?: pulumi.Input; /** * UDP (seconds) */ timeoutUdp?: pulumi.Input; } export interface SiteMember { /** * UUID of the remote network */ id?: pulumi.Input; /** * The mode of the remote network */ mode: pulumi.Input; /** * The member name */ name: pulumi.Input; /** * The remote network name */ remoteNetwork?: pulumi.Input; } export interface SiteQos { /** * The backup CIR in Mbps. This is distributed equally for all tunnels in the site. */ backupCir?: pulumi.Input; /** * The CIR in Mbps. This is distributed equally for all tunnels in the site. */ cir?: pulumi.Input; /** * The name of the site QoS profile */ profile?: pulumi.Input; } export interface SyslogServerProfileFormat { /** * Auth */ auth?: pulumi.Input; /** * Config */ config?: pulumi.Input; /** * Correlation */ correlation?: pulumi.Input; /** * Data */ data?: pulumi.Input; /** * Decryption */ decryption?: pulumi.Input; /** * Escaping */ escaping?: pulumi.Input; /** * Globalprotect */ globalprotect?: pulumi.Input; /** * Gtp */ gtp?: pulumi.Input; /** * Hip match */ hipMatch?: pulumi.Input; /** * Iptag */ iptag?: pulumi.Input; /** * Sctp */ sctp?: pulumi.Input; /** * System */ system?: pulumi.Input; /** * Threat */ threat?: pulumi.Input; /** * Traffic */ traffic?: pulumi.Input; /** * Tunnel */ tunnel?: pulumi.Input; /** * Url */ url?: pulumi.Input; /** * Userid */ userid?: pulumi.Input; /** * Wildfire */ wildfire?: pulumi.Input; } export interface SyslogServerProfileFormatEscaping { /** * Escape sequence delimiter */ escapeCharacter?: pulumi.Input; /** * A list of all the characters to be escaped (without spaces). */ escapedCharacters?: pulumi.Input; } export interface SyslogServerProfileServer { /** * Syslog facility */ facility?: pulumi.Input; /** * Syslog format */ format?: pulumi.Input; /** * Syslog server name */ name?: pulumi.Input; /** * Syslog server port */ port?: pulumi.Input; /** * Syslog server address */ server?: pulumi.Input; /** * Transport protocol */ transport?: pulumi.Input; } export interface TacacsServerProfileServer { /** * The IP address of the TACACS+ server */ address?: pulumi.Input; /** * The name of the TACACS+ server */ name?: pulumi.Input; /** * The TACACS+ server port */ port?: pulumi.Input; /** * The TACACS+ secret */ secret?: pulumi.Input; } export interface TcpSettingTcp { /** * Allow arbitrary ACK in response to SYN? */ allowChallengeAck?: pulumi.Input; /** * Asymmetric path action */ asymmetricPath?: pulumi.Input; /** * Forward segments exceeding TCP out-of-order queue? */ bypassExceedOoQueue?: pulumi.Input; /** * Drop segments with null timestamp option? */ checkTimestampOption?: pulumi.Input; /** * Drop segments without flag? */ dropZeroFlag?: pulumi.Input; /** * SIP TCP cleartext action (`'0'` = Always Off, `'1'` = Always Enabled, `'2'` = Automatically enable proxy when needed) */ siptcpCleartextProxy?: pulumi.Input; /** * Strip MPTCP option? */ stripMptcpOption?: pulumi.Input; /** * TCP retransmit scan? */ tcpRetransmitScan?: pulumi.Input; /** * Urgent data flag action */ urgentData?: pulumi.Input; } export interface TlsServiceProfileProtocolSettings { /** * Allow SHA1 authentication? */ authAlgoSha1?: pulumi.Input; /** * Allow SHA256 authentication? */ authAlgoSha256?: pulumi.Input; /** * Allow SHA384 authentication? */ authAlgoSha384?: pulumi.Input; /** * Allow AES-128-CBC algorithm? */ encAlgoAes128Cbc?: pulumi.Input; /** * Allow AES-128-GCM algorithm? */ encAlgoAes128Gcm?: pulumi.Input; /** * Allow AES-256-CBC algorithm? */ encAlgoAes256Cbc?: pulumi.Input; /** * Allow algorithm AES-256-GCM */ encAlgoAes256Gcm?: pulumi.Input; /** * Allow DHE algorithm? */ keyxchgAlgoDhe?: pulumi.Input; /** * Allow ECDHE algorithm? */ keyxchgAlgoEcdhe?: pulumi.Input; /** * Allow RSA algorithm? */ keyxchgAlgoRsa?: pulumi.Input; /** * Maximum TLS version */ maxVersion?: pulumi.Input; /** * Minimum TLS version */ minVersion?: pulumi.Input; } export interface TrafficSteeringRuleAction { /** * Forward */ forward?: pulumi.Input; } export interface TrafficSteeringRuleActionForward { /** * Forward */ forward?: pulumi.Input; /** * No pbf */ noPbf?: pulumi.Input; } export interface TrafficSteeringRuleActionForwardForward { /** * Target */ target?: pulumi.Input; } export interface TrafficSteeringRuleActionForwardNoPbf { } export interface TunnelInterfaceIp { /** * Tunnel Interface IP address(es) */ name: pulumi.Input; } export interface TunnelInterfaceIpv6 { /** * IPv6 Address Parent for tunnel interface */ addresses?: pulumi.Input[] | undefined>; /** * Enable IPv6 for tunnel interface */ enabled?: pulumi.Input; /** * Interface ID for tunnel interface */ interfaceId?: pulumi.Input; } export interface TunnelInterfaceIpv6Address { /** * Anycast for tunnel interface */ anycast?: pulumi.Input; /** * Enable Address on Interface for tunnel interface */ enableOnInterface?: pulumi.Input; /** * IPv6 Address for tunnel interface */ name?: pulumi.Input; /** * Use interface ID as host portion for tunnel interface */ prefix?: pulumi.Input; } export interface TunnelInterfaceIpv6AddressAnycast { } export interface TunnelInterfaceIpv6AddressPrefix { } export interface UpdateScheduleUpdateSchedule { /** * Anti virus */ antiVirus: pulumi.Input; /** * Threats */ threats: pulumi.Input; /** * Wildfire */ wildfire: pulumi.Input; } export interface UpdateScheduleUpdateScheduleAntiVirus { /** * Recurring */ recurring: pulumi.Input; } export interface UpdateScheduleUpdateScheduleAntiVirusRecurring { /** * Daily */ daily?: pulumi.Input; /** * Hourly * * > ℹ️ **Note:** You must specify exactly one of `daily`, `hourly`, `none`, and `weekly`. */ hourly?: pulumi.Input; /** * None * * > ℹ️ **Note:** You must specify exactly one of `daily`, `hourly`, `none`, and `weekly`. */ none?: pulumi.Input; /** * Sync to peer */ syncToPeer: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; /** * Weekly * * > ℹ️ **Note:** You must specify exactly one of `daily`, `hourly`, `none`, and `weekly`. */ weekly?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleAntiVirusRecurringDaily { /** * Action */ action?: pulumi.Input; /** * At */ at: pulumi.Input; } export interface UpdateScheduleUpdateScheduleAntiVirusRecurringHourly { /** * Action */ action?: pulumi.Input; /** * At */ at: pulumi.Input; } export interface UpdateScheduleUpdateScheduleAntiVirusRecurringNone { } export interface UpdateScheduleUpdateScheduleAntiVirusRecurringWeekly { /** * Action */ action?: pulumi.Input; /** * At */ at?: pulumi.Input; /** * Day of week */ dayOfWeek?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleThreats { /** * Recurring */ recurring: pulumi.Input; } export interface UpdateScheduleUpdateScheduleThreatsRecurring { /** * Daily */ daily?: pulumi.Input; /** * Every30 mins * * > ℹ️ **Note:** You must specify exactly one of `daily`, `every30Mins`, `hourly`, `none`, and `weekly`. */ every30Mins?: pulumi.Input; /** * Hourly * * > ℹ️ **Note:** You must specify exactly one of `daily`, `every30Mins`, `hourly`, `none`, and `weekly`. */ hourly?: pulumi.Input; /** * New app threshold */ newAppThreshold?: pulumi.Input; /** * None * * > ℹ️ **Note:** You must specify exactly one of `daily`, `every30Mins`, `hourly`, `none`, and `weekly`. */ none?: pulumi.Input; /** * Sync to peer */ syncToPeer: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; /** * Weekly * * > ℹ️ **Note:** You must specify exactly one of `daily`, `every30Mins`, `hourly`, `none`, and `weekly`. */ weekly?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleThreatsRecurringDaily { /** * Action */ action?: pulumi.Input; /** * At */ at: pulumi.Input; /** * Disable new content */ disableNewContent?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleThreatsRecurringEvery30Mins { /** * Action */ action?: pulumi.Input; /** * At */ at?: pulumi.Input; /** * Disable new content */ disableNewContent?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleThreatsRecurringHourly { /** * Action */ action?: pulumi.Input; /** * At */ at: pulumi.Input; /** * Disable new content */ disableNewContent?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleThreatsRecurringNone { } export interface UpdateScheduleUpdateScheduleThreatsRecurringWeekly { /** * Action */ action?: pulumi.Input; /** * At */ at: pulumi.Input; /** * Day of week */ dayOfWeek: pulumi.Input; /** * Disable new content */ disableNewContent?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfire { /** * Recurring */ recurring: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfireRecurring { /** * Every15 mins */ every15Mins?: pulumi.Input; /** * Every30 mins * * > ℹ️ **Note:** You must specify exactly one of `every15Mins`, `every30Mins`, `everyHour`, `everyMin`, `none`, and `realTime`. */ every30Mins?: pulumi.Input; /** * Every hour * * > ℹ️ **Note:** You must specify exactly one of `every15Mins`, `every30Mins`, `everyHour`, `everyMin`, `none`, and `realTime`. */ everyHour?: pulumi.Input; /** * Every min * * > ℹ️ **Note:** You must specify exactly one of `every15Mins`, `every30Mins`, `everyHour`, `everyMin`, `none`, and `realTime`. */ everyMin?: pulumi.Input; /** * None * * > ℹ️ **Note:** You must specify exactly one of `every15Mins`, `every30Mins`, `everyHour`, `everyMin`, `none`, and `realTime`. */ none?: pulumi.Input; /** * Real time * * > ℹ️ **Note:** You must specify exactly one of `every15Mins`, `every30Mins`, `everyHour`, `everyMin`, `none`, and `realTime`. */ realTime?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfireRecurringEvery15Mins { /** * Action */ action?: pulumi.Input; /** * At */ at?: pulumi.Input; /** * Sync to peer */ syncToPeer?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfireRecurringEvery30Mins { /** * Action */ action?: pulumi.Input; /** * At */ at?: pulumi.Input; /** * Sync to peer */ syncToPeer?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfireRecurringEveryHour { /** * Action */ action?: pulumi.Input; /** * At */ at?: pulumi.Input; /** * Sync to peer */ syncToPeer?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfireRecurringEveryMin { /** * Action */ action?: pulumi.Input; /** * Sync to peer */ syncToPeer?: pulumi.Input; } export interface UpdateScheduleUpdateScheduleWildfireRecurringNone { } export interface UpdateScheduleUpdateScheduleWildfireRecurringRealTime { } export interface UrlAccessProfileCredentialEnforcement { /** * Alert */ alerts?: pulumi.Input[] | undefined>; /** * Allow */ allows?: pulumi.Input[] | undefined>; /** * Block */ blocks?: pulumi.Input[] | undefined>; /** * Continue */ continues?: pulumi.Input[] | undefined>; /** * Log severity */ logSeverity?: pulumi.Input; /** * Mode */ mode?: pulumi.Input; } export interface UrlAccessProfileCredentialEnforcementMode { /** * Disabled */ disabled?: pulumi.Input; /** * Domain credentials */ domainCredentials?: pulumi.Input; /** * Group mapping */ groupMapping?: pulumi.Input; /** * Ip user */ ipUser?: pulumi.Input; } export interface UrlAccessProfileCredentialEnforcementModeDisabled { } export interface UrlAccessProfileCredentialEnforcementModeDomainCredentials { } export interface UrlAccessProfileCredentialEnforcementModeIpUser { } export interface VlanInterfaceArp { /** * MAC address */ hwAddress?: pulumi.Input; /** * ARP interface */ interface?: pulumi.Input; /** * IP address */ name?: pulumi.Input; } export interface VlanInterfaceDdnsConfig { /** * Certificate profile */ ddnsCertProfile: pulumi.Input; /** * Enable DDNS? */ ddnsEnabled?: pulumi.Input; /** * Ddns hostname */ ddnsHostname: pulumi.Input; /** * IP to register (static only) */ ddnsIp?: pulumi.Input; /** * Update interval (days) */ ddnsUpdateInterval?: pulumi.Input; /** * DDNS vendor */ ddnsVendor: pulumi.Input; /** * DDNS vendor */ ddnsVendorConfig: pulumi.Input; } export interface VlanInterfaceDhcpClient { /** * Automatically create default route pointing to default gateway provided by server */ createDefaultRoute?: pulumi.Input; /** * Metric of the default route created */ defaultRouteMetric?: pulumi.Input; /** * Enable DHCP? */ enable?: pulumi.Input; /** * Send hostname */ sendHostname?: pulumi.Input; } export interface VlanInterfaceDhcpClientSendHostname { /** * Enable */ enable?: pulumi.Input; /** * Set interface hostname */ hostname?: pulumi.Input; } export interface VlanInterfaceIp { /** * VLAN Interface IP address(es) */ name: pulumi.Input; } export interface VpnSettingVpn { /** * Ikev2 */ ikev2?: pulumi.Input; } export interface VpnSettingVpnIkev2 { /** * Maximum cached certificates */ certificateCacheSize?: pulumi.Input; /** * Cookie activation threshold */ cookieThreshold?: pulumi.Input; /** * Maximum half-opened SA */ maxHalfOpenedSa?: pulumi.Input; } export interface VulnerabilityProtectionProfileRule { /** * vulnerability profiles threat exception default action */ action?: pulumi.Input; /** * Category */ category?: pulumi.Input; /** * Cve */ cves?: pulumi.Input[] | undefined>; /** * Host */ host?: pulumi.Input; /** * Name */ name?: pulumi.Input; /** * Packet capture */ packetCapture?: pulumi.Input; /** * Severity */ severities?: pulumi.Input[] | undefined>; /** * Threat name */ threatName?: pulumi.Input; /** * Vendor id */ vendorIds?: pulumi.Input[] | undefined>; } export interface VulnerabilityProtectionProfileRuleAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ allow?: pulumi.Input; /** * vulnerability protection block ip * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ blockIp?: pulumi.Input; /** * Default * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ default?: pulumi.Input; /** * Drop * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ drop?: pulumi.Input; /** * Reset both * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetBoth?: pulumi.Input; /** * Reset client * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetClient?: pulumi.Input; /** * Reset server * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetServer?: pulumi.Input; } export interface VulnerabilityProtectionProfileRuleActionAlert { } export interface VulnerabilityProtectionProfileRuleActionAllow { } export interface VulnerabilityProtectionProfileRuleActionBlockIp { /** * Duration */ duration?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface VulnerabilityProtectionProfileRuleActionDefault { } export interface VulnerabilityProtectionProfileRuleActionDrop { } export interface VulnerabilityProtectionProfileRuleActionResetBoth { } export interface VulnerabilityProtectionProfileRuleActionResetClient { } export interface VulnerabilityProtectionProfileRuleActionResetServer { } export interface VulnerabilityProtectionProfileThreatException { /** * vulnerability threat exception default action */ action?: pulumi.Input; /** * Exempt ip */ exemptIps?: pulumi.Input[] | undefined>; /** * Name */ name?: pulumi.Input; /** * Notes */ notes?: pulumi.Input; /** * Packet capture */ packetCapture?: pulumi.Input; /** * vulnerability time attribute */ timeAttribute?: pulumi.Input; } export interface VulnerabilityProtectionProfileThreatExceptionAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ allow?: pulumi.Input; /** * vulnerability protection threat exception block ip * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ blockIp?: pulumi.Input; /** * Default * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ default?: pulumi.Input; /** * Drop * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ drop?: pulumi.Input; /** * Reset both * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetBoth?: pulumi.Input; /** * Reset client * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetClient?: pulumi.Input; /** * Reset server * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `default`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetServer?: pulumi.Input; } export interface VulnerabilityProtectionProfileThreatExceptionActionAlert { } export interface VulnerabilityProtectionProfileThreatExceptionActionAllow { } export interface VulnerabilityProtectionProfileThreatExceptionActionBlockIp { /** * Duration */ duration?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface VulnerabilityProtectionProfileThreatExceptionActionDefault { } export interface VulnerabilityProtectionProfileThreatExceptionActionDrop { } export interface VulnerabilityProtectionProfileThreatExceptionActionResetBoth { } export interface VulnerabilityProtectionProfileThreatExceptionActionResetClient { } export interface VulnerabilityProtectionProfileThreatExceptionActionResetServer { } export interface VulnerabilityProtectionProfileThreatExceptionExemptIp { /** * Name */ name: pulumi.Input; } export interface VulnerabilityProtectionProfileThreatExceptionTimeAttribute { /** * Interval */ interval?: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface VulnerabilityProtectionSignatureAffectedHost { /** * Client */ client?: pulumi.Input; /** * Server * * > ℹ️ **Note:** You must specify exactly one of `client` and `server`. */ server?: pulumi.Input; } export interface VulnerabilityProtectionSignatureDefaultAction { /** * Alert */ alert?: pulumi.Input; /** * Allow * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ allow?: pulumi.Input; /** * vulnerability protection bugtraq block ip * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ blockIp?: pulumi.Input; /** * Drop * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ drop?: pulumi.Input; /** * Reset both * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetBoth?: pulumi.Input; /** * Reset client * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetClient?: pulumi.Input; /** * Reset server * * > ℹ️ **Note:** You must specify exactly one of `alert`, `allow`, `blockIp`, `drop`, `resetBoth`, `resetClient`, and `resetServer`. */ resetServer?: pulumi.Input; } export interface VulnerabilityProtectionSignatureDefaultActionAlert { } export interface VulnerabilityProtectionSignatureDefaultActionAllow { } export interface VulnerabilityProtectionSignatureDefaultActionBlockIp { /** * Duration */ duration?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface VulnerabilityProtectionSignatureDefaultActionDrop { } export interface VulnerabilityProtectionSignatureDefaultActionResetBoth { } export interface VulnerabilityProtectionSignatureDefaultActionResetClient { } export interface VulnerabilityProtectionSignatureDefaultActionResetServer { } export interface VulnerabilityProtectionSignatureSignature { /** * vulnerability protection signature combination object */ combination?: pulumi.Input; /** * vulnerability protection signature standard array * * > ℹ️ **Note:** You must specify exactly one of `combination` and `standard`. */ standards?: pulumi.Input[] | undefined>; } export interface VulnerabilityProtectionSignatureSignatureCombination { /** * vulnerability protection signature combination object and condition */ andConditions?: pulumi.Input[] | undefined>; /** * Order free */ orderFree?: pulumi.Input; /** * Time attribute */ timeAttribute?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureCombinationAndCondition { /** * Name */ name?: pulumi.Input; /** * vulnerability protection signature combination object and condition object or condition */ orConditions?: pulumi.Input[] | undefined>; } export interface VulnerabilityProtectionSignatureSignatureCombinationAndConditionOrCondition { /** * Name */ name?: pulumi.Input; /** * Threat id */ threatId?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureCombinationTimeAttribute { /** * Interval */ interval?: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; /** * Track by */ trackBy?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandard { /** * vulnerability protection signature standard object and condition */ andConditions?: pulumi.Input[] | undefined>; /** * Comment */ comment?: pulumi.Input; /** * Name */ name: pulumi.Input; /** * Order free */ orderFree?: pulumi.Input; /** * Scope */ scope?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndCondition { /** * Name */ name?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition */ orConditions?: pulumi.Input[] | undefined>; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrCondition { /** * Name */ name?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators */ operator?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperator { /** * vulnerability protection signature standard object and condition object or condition object operators equal*to */ equalTo?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators greater*than */ greaterThan?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators less*than */ lessThan?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators pattern match */ patternMatch?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorEqualTo { /** * Context */ context?: pulumi.Input; /** * Negate */ negate?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators equal*to qualifier array */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorEqualToQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorGreaterThan { /** * Context */ context?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators greater*than qualifier */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorGreaterThanQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorLessThan { /** * Context */ context?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators less*than array */ qualifiers?: pulumi.Input[] | undefined>; /** * Value */ value?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorLessThanQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorPatternMatch { /** * Context */ context?: pulumi.Input; /** * Negate */ negate?: pulumi.Input; /** * Pattern */ pattern?: pulumi.Input; /** * vulnerability protection signature standard object and condition object or condition object operators pattern match qualifier */ qualifiers?: pulumi.Input[] | undefined>; } export interface VulnerabilityProtectionSignatureSignatureStandardAndConditionOrConditionOperatorPatternMatchQualifier { /** * Name */ name?: pulumi.Input; /** * Value */ value?: pulumi.Input; } export interface WildfireAntiVirusProfileMlavException { /** * Description */ description?: pulumi.Input; /** * Filename */ filename?: pulumi.Input; /** * Name */ name?: pulumi.Input; } export interface WildfireAntiVirusProfileRule { /** * Analysis */ analysis?: pulumi.Input; /** * Application */ applications?: pulumi.Input[] | undefined>; /** * Direction */ direction?: pulumi.Input; /** * File type */ fileTypes?: pulumi.Input[] | undefined>; /** * Name */ name?: pulumi.Input; } export interface WildfireAntiVirusProfileThreatException { /** * Name */ name?: pulumi.Input; /** * Notes */ notes?: pulumi.Input; } export interface ZoneDeviceAcl { /** * Exclude list */ excludeLists?: pulumi.Input[] | undefined>; /** * Include list */ includeLists?: pulumi.Input[] | undefined>; } export interface ZoneNetwork { /** * Enable packet buffer protection */ enablePacketBufferProtection?: pulumi.Input; /** * External */ externals?: pulumi.Input[] | undefined>; /** * Layer2 */ layer2s?: pulumi.Input[] | undefined>; /** * Layer3 */ layer3s?: pulumi.Input[] | undefined>; /** * Log setting */ logSetting?: pulumi.Input; /** * Tap */ taps?: pulumi.Input[] | undefined>; /** * Tunnel */ tunnel?: pulumi.Input; /** * Virtual wire */ virtualWires?: pulumi.Input[] | undefined>; /** * Zone protection profile */ zoneProtectionProfile?: pulumi.Input; } export interface ZoneNetworkTunnel { } export interface ZoneProtectionProfileFlood { /** * Icmp */ icmp?: pulumi.Input; /** * Icmpv6 */ icmpv6?: pulumi.Input; /** * Other ip */ otherIp?: pulumi.Input; /** * Sctp init */ sctpInit?: pulumi.Input; /** * Tcp syn */ tcpSyn?: pulumi.Input; /** * Udp */ udp?: pulumi.Input; } export interface ZoneProtectionProfileFloodIcmp { /** * Enable protection against ICMP floods? */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface ZoneProtectionProfileFloodIcmpRed { /** * The number of ICMP packets (not matching an existing session) that the zone receives per second before subsequent ICMP packets are dropped. */ activateRate: pulumi.Input; /** * The number of ICMP echo requests (pings not matching an existing session) that the zone receives per second that triggers an attack alarm. */ alarmRate: pulumi.Input; /** * The maximum number of ICMP packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileFloodIcmpv6 { /** * Enable protection against ICMPv6 floods? */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface ZoneProtectionProfileFloodIcmpv6Red { /** * The number of ICMPv6 packets (not matching an existing session) that the zone receives per second before subsequent ICMPv6 packets are dropped. */ activateRate: pulumi.Input; /** * The number of ICMPv6 echo requests (pings not matching an existing session) that the zone receives per second that triggers an attack alarm. */ alarmRate: pulumi.Input; /** * The maximum number of ICMPv6 packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileFloodOtherIp { /** * Enable protection against other IP (non-TCP, non-ICMP, non-ICMPv6, non-SCTP, and non-UDP) floods? */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface ZoneProtectionProfileFloodOtherIpRed { /** * Activate rate */ activateRate: pulumi.Input; /** * Alarm rate */ alarmRate: pulumi.Input; /** * Maximal rate */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileFloodSctpInit { /** * Enable protection against floods of Stream Control Transmission Protocol (SCTP) packets that contain an Initiation (INIT) chunk? */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface ZoneProtectionProfileFloodSctpInitRed { /** * The number of SCTP INIT packets (not matching an existing session) that the zone receives per second before subsequent SCTP INIT packets are dropped. */ activateRate: pulumi.Input; /** * The number of SCTP INIT packets (not matching an existing session) that the zone receives per second that triggers an attack alarm. */ alarmRate: pulumi.Input; /** * The maximum number of SCTP INIT packets (not matching an existing session) that the zone receives per second before packets exceeding the maximum are dropped. */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileFloodTcpSyn { /** * Enable protection against SYN floods? */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; /** * Syn cookies */ synCookies?: pulumi.Input; } export interface ZoneProtectionProfileFloodTcpSynRed { /** * When the flow exceeds the `activateRate`` threshold, the firewall drops individual SYN packets randomly to restrict the flow. */ activateRate: pulumi.Input; /** * When the flow exceeds the `alertRate`` threshold, an alarm is generated. */ alarmRate: pulumi.Input; /** * When the flow exceeds the `maximalRate` threshold, 100% of incoming SYN packets are dropped. */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileFloodTcpSynSynCookies { /** * When the flow exceeds the `activateRate`` threshold, the firewall drops individual SYN packets randomly to restrict the flow. */ activateRate: pulumi.Input; /** * When the flow exceeds the `alertRate`` threshold, an alarm is generated. */ alarmRate: pulumi.Input; /** * When the flow exceeds the `maximalRate` threshold, 100% of incoming SYN packets are dropped. */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileFloodUdp { /** * Enable protection against UDP floods? */ enable?: pulumi.Input; /** * Red */ red?: pulumi.Input; } export interface ZoneProtectionProfileFloodUdpRed { /** * The number of UDP packets (not matching an existing session) that the zone receives per second that triggers random dropping of UDP packets. */ activateRate: pulumi.Input; /** * The number of UDP packets (not matching an existing session) that the zone receives per second that triggers an attack alarm. */ alarmRate: pulumi.Input; /** * The maximum number of UDP packets (not matching an existing session) the zone receives per second before packets exceeding the maximum are dropped. */ maximalRate: pulumi.Input; } export interface ZoneProtectionProfileIpv6 { /** * Discard IPv6 packets that contain an anycast source address. */ anycastSource?: pulumi.Input; /** * Filter ext hdr */ filterExtHdr?: pulumi.Input; /** * Discard IPv6 packets that contain a Packet Too Big ICMPv6 message when the maximum transmission unit (MTU) is less than 1,280 bytes. */ icmpv6TooBigSmallMtuDiscard?: pulumi.Input; /** * Ignore inv pkt */ ignoreInvPkt?: pulumi.Input; /** * Discard IPv6 packets that are defined as an RFC 4291 IPv4-Compatible IPv6 address. */ ipv4CompatibleAddress?: pulumi.Input; /** * Discard IPv6 packets with the last fragment flag (M=0) and offset of zero. */ needlessFragmentHdr?: pulumi.Input; /** * Discard IPv6 packets that contain invalid IPv6 options in an extension header. */ optionsInvalidIpv6Discard?: pulumi.Input; /** * Discard IPv6 packets that have a header with a reserved field not set to zero. */ reservedFieldSetDiscard?: pulumi.Input; /** * Drop packets with type 0 routing header. */ routingHeader0?: pulumi.Input; /** * Drop packets with type 1 routing header. */ routingHeader1?: pulumi.Input; /** * Drop packets with type 253 routing header. */ routingHeader253?: pulumi.Input; /** * Drop packets with type 254 routing header. */ routingHeader254?: pulumi.Input; /** * Drop packets with type 255 routing header. */ routingHeader255?: pulumi.Input; /** * Drop packets with type 3 routing header. */ routingHeader3?: pulumi.Input; /** * Drop packets with type 4 to type 252 routing header. */ routingHeader4252?: pulumi.Input; } export interface ZoneProtectionProfileIpv6FilterExtHdr { /** * Discard IPv6 packets that contain the Destination Options extension, which contains options intended only for the destination of the packet. */ destOptionHdr?: pulumi.Input; /** * Discard IPv6 packets that contain the Hop-by-Hop Options extension header. */ hopByHopHdr?: pulumi.Input; /** * Discard IPv6 packets that contain the Routing extension header, which directs packets to one or more intermediate nodes on its way to its destination. */ routingHdr?: pulumi.Input; } export interface ZoneProtectionProfileIpv6IgnoreInvPkt { /** * Require an explicit Security policy match for Destination Unreachable ICMPv6 messages, even when the message is associated with an existing session. */ destUnreach?: pulumi.Input; /** * Require an explicit Security policy match for Parameter Problem ICMPv6 messages, even when the message is associated with an existing session. */ paramProblem?: pulumi.Input; /** * Require an explicit Security policy match for Packet Too Big ICMPv6 messages, even when the message is associated with an existing session. */ pktTooBig?: pulumi.Input; /** * Require an explicit Security policy match for Redirect Message ICMPv6 messages, even when the message is associated with an existing session. */ redirect?: pulumi.Input; /** * Require an explicit Security policy match for Time Exceeded ICMPv6 messages, even when the message is associated with an existing session. */ timeExceeded?: pulumi.Input; } export interface ZoneProtectionProfileL2SecGroupTagProtection { /** * Tags */ tags?: pulumi.Input[] | undefined>; } export interface ZoneProtectionProfileL2SecGroupTagProtectionTag { /** * Enable this exclude list for Ethernet SGT protection. */ enable?: pulumi.Input; /** * Name for the list of Security Group Tags (SGTs). */ name: pulumi.Input; /** * The Layer 2 SGTs in headers of packets that you want to exclude (drop) when the SGT matches this list in the Zone Protection profile applied to a zone (range is 0 to 65,535). */ tag: pulumi.Input; } export interface ZoneProtectionProfileNonIpProtocol { /** * Specify the type of list you are creating for protocol protection: * * Include List—Only the protocols on the list are allowed—in addition to IPv4 (0x0800), IPv6 (0x86DD), ARP (0x0806), and VLAN tagged frames (0x8100). All other protocols are implicitly denied (blocked). * * Exclude List—Only the protocols on the list are denied; all other protocols are implicitly allowed. You cannot exclude IPv4 (0x0800), IPv6 (0x86DD), ARP (0x0806), or VLAN tagged frames (0x8100). */ listType?: pulumi.Input; /** * Protocol */ protocols?: pulumi.Input[] | undefined>; } export interface ZoneProtectionProfileNonIpProtocolProtocol { /** * Enable the Ethertype code on the list. */ enable?: pulumi.Input; /** * Enter an Ethertype code (protocol) preceded by 0x to indicate hexadecimal (range is 0x0000 to 0xFFFF). A list can have a maximum of 64 Ethertypes. Some sources of Ethertype codes are: * * [IEEE hexadecimal Ethertype](https://www.iana.org/assignments/ieee-802-numbers/ieee-802-numbers.xhtml) * * [standards.ieee.org/develop/regauth/ethertype/eth.txt](https://standards-oui.ieee.org/ethertype/eth.txt) * * [www.cavebear.com/archive/cavebear/Ethernet/type.html](https://www.cavebear.com/archive/cavebear/Ethernet/type.html) */ etherType: pulumi.Input; /** * Enter the protocol name that corresponds to the Ethertype code you are adding to the list. The firewall does not verify that the protocol name matches the Ethertype code but the Ethertype code does determine the protocol filter. */ name: pulumi.Input; } export interface ZoneProtectionProfileScan { /** * Action */ action?: pulumi.Input; /** * Interval */ interval?: pulumi.Input; /** * The threat ID number. These can be found in [Palo Alto Networks ThreatVault](https://threatvault.paloaltonetworks.com). * * "8001" - TCP Port Scan * * "8002" - Host Sweep * * "8003" - UDP Port Scan * * "8006" - Port Scan */ name: pulumi.Input; /** * Threshold */ threshold?: pulumi.Input; } export interface ZoneProtectionProfileScanAction { /** * Alert */ alert?: pulumi.Input; /** * Allow */ allow?: pulumi.Input; /** * Block */ block?: pulumi.Input; /** * Block ip */ blockIp?: pulumi.Input; } export interface ZoneProtectionProfileScanActionAlert { } export interface ZoneProtectionProfileScanActionAllow { } export interface ZoneProtectionProfileScanActionBlock { } export interface ZoneProtectionProfileScanActionBlockIp { /** * Duration */ duration: pulumi.Input; /** * Track by */ trackBy: pulumi.Input; } export interface ZoneProtectionProfileScanWhiteList { /** * Ipv4 */ ipv4?: pulumi.Input; /** * Ipv6 */ ipv6?: pulumi.Input; /** * A descriptive name for the address to exclude. */ name: pulumi.Input; } export interface ZoneUserAcl { /** * Exclude list */ excludeLists?: pulumi.Input[] | undefined>; /** * Include list */ includeLists?: pulumi.Input[] | undefined>; } //# sourceMappingURL=input.d.ts.map