deprecated.psm1
# # $Id: fcarpin $ Fabrizio Carpin # $warning = "WARNING: This function is deprecated. Please use" # ================================================== # region TEMPLATES # ================================================== Function ExportVSTemplate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$Port, [ValidateSet("tcp", "udp")] [string]$Protocol, [Int32]$VSIndex, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Path, [switch]$Force, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Export-VSTemplate" } Export-ModuleMember -function ExportVSTemplate Function UploadTemplate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [ValidateScript({Test-Path $_})] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Install-Template" } Export-ModuleMember -function UploadTemplate Function DeleteTemplate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-Template" } Export-ModuleMember -function DeleteTemplate Function ListTemplates { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-Template" } Export-ModuleMember -function ListTemplates # ================================================== # endregion TEMPLATES # ================================================== # ================================================== # region LOGGING # ================================================== Function Get-EmailOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LogEmailConfiguration" } Export-ModuleMember -function Get-EmailOption Function Set-EmailOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [bool]$EmailEnable, [string]$EmailServer, [ValidateRange(3, 65530)] [int]$EmailPort, [string]$EmailUser, [string]$EmailPassword, [string]$EmailDomain, [ValidateSet(0, 1, 2, 3)] [Int16]$EmailSSLMode, [string]$EmailEmergency, [string]$EmailCritical, [string]$EmailError, [string]$EmailWarn, [string]$EmailNotice, [string]$EmailInfo, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LogEmailConfiguration" } Export-ModuleMember -function Set-EmailOption Function Get-SyslogOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LogSyslogConfiguration" } Export-ModuleMember -function Get-SyslogOption Function Set-SyslogOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$SyslogCritical, [string]$SyslogEmergency, [string]$SyslogError, [string]$SyslogInfo, [string]$SyslogNotice, [string]$SyslogWarn, [UInt16]$SyslogPort, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LogSyslogConfiguration" } Export-ModuleMember -function Set-SyslogOption Function Get-Statistics { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [switch]$VirtualService, [switch]$RealServer, [switch]$Totals, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LogStatistics" } Export-ModuleMember -function Get-Statistics # ================================================== # endregion LOGGING # ================================================== # ================================================== # region SSO # ================================================== Function UploadRSAConfigurationFile { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Install-SSORSAConfigurationFile" } Export-ModuleMember -function UploadRSAConfigurationFile Function UploadRSANodeSecretAndPassword { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$Password, [Parameter(Mandatory=$true)] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Install-SSORSANodeSecretAndPassword" } Export-ModuleMember -function UploadRSANodeSecretAndPassword Function FlushSsoCache { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Clear-SSOCache" } Export-ModuleMember -function FlushSsoCache # ================================================== # endregion SSO # ================================================== # ================================================== # region NETWORKING # ================================================== Function ListIfconfig { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmNetworkInterface" } Export-ModuleMember -function ListIfconfig Function Get-NetworkOptions { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-NetworkConfiguration" } Export-ModuleMember -function Get-NetworkOptions Function Set-NetworkOptions { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [bool]$SNAT, [bool]$AllowUpload, [ValidateRange(0, 86400)] [Int64]$ConnTimeout, [bool]$KeepAlive, [bool]$MultiGW, [bool]$NonLocalRS, [bool]$OnlyDefaultRoutes, [bool]$ResetClose, [bool]$SubnetOrigin, [bool]$SubnetOriginating, [bool]$TCPTimeStamp, [bool]$RouteFilter, [ValidateRange(512, 4096)] [Int32]$DHKeySize, [string]$Http_Proxy, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-NetworkConfiguration" } Export-ModuleMember -function Set-NetworkOptions Function Get-DNSConfiguration { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-NetworkDNSConfiguration" } Export-ModuleMember -function Get-DNSConfiguration Function Set-DNSConfiguration { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$Hostname, [string]$HA1Hostname, [string]$HA2Hostname, [string]$NameServer, [string]$Searchlist, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-NetworkDNSConfiguration" } Export-ModuleMember -function Set-DNSConfiguration Function Update-LmDNSCache { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Update-NetworkDNSCache" } Export-ModuleMember -function Update-LmDNSCache Function Get-SNMPOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-NetworkSNMPConfiguration" } Export-ModuleMember -function Get-SNMPOption Function Set-SNMPOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [bool]$SNMPEnable, [bool]$SNMPv3enable, [string]$SNMPv3user, [string]$SNMPv3userpasswd, [ValidateSet("SHA", "MD5")] [string]$snmpAuthProt, [ValidateSet("AES", "DES")] [string]$snmpPrivProt, [string]$SNMPClient, [string]$SNMPCommunity, [string]$SNMPContact, [string]$SNMPLocation, [bool]$SNMPTrapEnable, [bool]$SNMPHaTrap, [string]$SNMPv1Sink, [string]$SNMPv2Sink, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-NetworkSNMPConfiguration" } Export-ModuleMember -function Set-SNMPOption Function Get-Interface { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Int16]$InterfaceID = -1, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-NetworkInterface" } Export-ModuleMember -function Get-Interface Function Set-Interface { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Int16]$InterfaceID = 0, [string]$IPAddress, [Int32]$MTU, [bool]$HACheck, [bool]$GWIface, [bool]$clupdate, [bool]$GeoTraffic, [ValidateSet("802.3ad", "Active-backup")] [string]$BondMode, [string]$Partner, [string]$Shared, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-NetworkInterface" } Export-ModuleMember -function Set-Interface Function Add-InterfaceAddress { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Int16]$InterfaceID, [string]$Address, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-NetworkInterfaceAdditionalAddress" } Export-ModuleMember -function Add-InterfaceAddress Function Remove-InterfaceAddress { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [Int16]$InterfaceID, [string]$Address, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-NetworkInterfaceAdditionalAddress" } Export-ModuleMember -function Remove-InterfaceAddress Function Get-Route { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-NetworkRoute" } Export-ModuleMember -function Get-Route Function New-Route { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Destination, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [Alias("Mask", "SubnetMask")] [Int16]$CIDR, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Gateway, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-NetworkRoute" } Export-ModuleMember -function New-Route Function Remove-Route { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Destination, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-NetworkRoute" } Export-ModuleMember -function Remove-Route Function Register-BondedInterface { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Register-NetworkBondedInterface" } Export-ModuleMember -function Register-BondedInterface Function Unregister-BondedInterface { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Unregister-NetworkBondedInterface" } Export-ModuleMember -function Unregister-BondedInterface Function Add-BondedInterface { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [Parameter(Mandatory=$true)] [Int16]$BondID, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-NetworkBondedInterface" } Export-ModuleMember -function Add-BondedInterface Function Remove-BondedInterface { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [Parameter(Mandatory=$true)] [Int16]$BondID, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-NetworkBondedInterface" } Export-ModuleMember -function Remove-BondedInterface Function Add-VLan { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [Parameter(Mandatory=$true)] [ValidateRange(1, 4095)] [Int16]$VLanId, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-NetworkVLAN" } Export-ModuleMember -function Add-VLan Function Remove-VLan { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-NetworkVLAN" } Export-ModuleMember -function Remove-VLan Function Add-VxLan { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [Parameter(Mandatory=$true)] [ValidateRange(1, 16777214)] [Int32]$VNI, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Addr, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-NetworkVxLAN" } Export-ModuleMember -function Add-VxLan Function Remove-VxLan { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [Int16]$InterfaceID, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-NetworkVxLAN" } Export-ModuleMember -function Remove-VxLan # ================================================== # endregion NETWORKING # ================================================== # ================================================== # region ADC # ================================================== Function New-VirtualService { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$VirtualService, [Parameter(Mandatory=$true)] [ValidateRange(3, 65530)] [Int32]$VSPort, [Parameter(Mandatory=$true)] [ValidateSet("tcp", "udp")] [string]$VSProtocol, [ValidateRange(0, 6)] [Int16]$AddVia, [string]$Template, [bool]$Cache = $false, [string]$CertFile, [ValidateSet("tcp", "icmp", "https", "http", "smtp", "nntp", "ftp", "telnet", "pop3", "imap", "rdp", "ldap", "none")] [string]$CheckType = "tcp", [string]$CheckHost, [string]$CheckPattern, [string]$CheckUrl, [string]$CheckHeaders, [string]$LdapEndpoint, [string]$MatchLen, [ValidateRange(0, 1)] [int]$CheckUse1_1 = -1, [Int32]$CheckPort, [bool]$EnhancedHealthChecks, [Int32]$RsMinimum, [ValidateRange(0, 2)] [Int16]$ClientCert = 0, [bool]$Compress = $false, [string]$Cookie, [ValidateRange(0, 100)] [Int16]$CachePercent = 0, [string]$DefaultGW, [bool]$Enable = $true, [string]$ErrorCode = 0, [string]$ErrorUrl, [ValidateRange(3, 65530)] [Int32]$PortFollow, [bool]$ForceL7 = $true, [ValidateRange(0, 86400)] [Int32]$Idletime, [String[]]$LocalBindAddresses, [ValidateSet("gen", "http", "tls", "ts")] [string]$VSType, [string]$Nickname, [ValidateSet("ssl", "cookie", "active-cookie", "cookie-src", "active-cook-src", "cookie-hash", "url", "query-hash", "host", "header", "super", "super-src", "src", "rdp", "rdp-src", "rdp-sb", "udpsip", "none")] [string]$Persist, [ValidateRange(0, 604800)] [Int32]$PersistTimeout, [string]$QueryTag, [string]$CipherSet, [bool]$SSLReencrypt, [bool]$SSLReverse, [ValidateSet("", "http", "https")] [string]$SSLRewrite, [string]$ReverseSNIHostname, [ValidateSet("rr", "wrr", "lc", "wlc", "fixed", "adaptive", "sh")] [string]$Schedule, [ValidateRange(0, 5)] [Int16]$ServerInit, [bool]$SSLAcceleration, [string]$StandByAddr, [string]$StandByPort, [Int32]$TransactionLimit, [bool]$Transparent, [bool]$SubnetOriginating, [bool]$UseforSnat, [ValidateSet("0", "1", "2", "4", "8")] [string]$QoS, [int32]$CheckUseGet, [ValidateRange(0, 7)] [Int16]$Verify, [string]$ExtraHdrKey, [string]$ExtraHdrValue, [string]$AllowedHosts, [string]$AllowedDirectories, [string]$AllowedGroups, [string]$GroupSIDs, [bool]$IncludeNestedGroups, [bool]$DisplayPubPriv, [bool]$DisablePasswordForm, [string]$Domain, [string]$AltDomains, [string]$Logoff, [ValidateRange(0, 7)] [Int16]$ESPLogs, [string]$SMTPAllowedDomains, [bool]$ESPEnabled, [string]$UserPwdChangeUrl, [string]$UserPwdChangeMsg, [ValidateRange(0, 5)] [Int16]$InputAuthMode, [ValidateRange(0, 2)] [Int16]$OutputAuthMode, [ValidateRange(0, 1)] [Int16]$StartTLSMode, [string]$ExtraPorts, [string]$AltAddress, [bool]$MultiConnect, [string]$SingleSignOnDir, [string]$OCSPVerify, [Int32]$FollowVSID, [bool]$TlsType = $false, [string]$CheckPostData, [string]$CheckCodes, [string]$PreProcPrecedence, [Int16]$PreProcPrecedencePos, [string]$RequestPrecedence, [Int16]$RequestPrecedencePos, [string]$ResponsePrecedence, [Int16]$ResponsePrecedencePos, [string]$RsRulePrecedence, [Int16]$RsRulePrecedencePos, [bool]$NeedHostName, [string]$CopyHdrFrom = "", [string]$CopyHdrTo = "", [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcVirtualService" } Export-ModuleMember -function New-VirtualService Function Get-VirtualService { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [String]$VSProtocol, [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcVirtualService" } Export-ModuleMember -function Get-VirtualService Function Set-VirtualService { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [Int16]$AddVia, [bool]$Cache, [string]$CertFile, [ValidateSet("tcp", "icmp", "https", "http", "smtp", "nntp", "ftp", "telnet", "pop3", "imap", "rdp", "ldap", "none")] [string]$CheckType, [string]$CheckHost, [string]$CheckPattern, [string]$CheckUrl, [string]$CheckHeaders, [string]$LdapEndpoint, [string]$MatchLen, [ValidateRange(0, 1)] [int]$CheckUse1_1 = -1, [Int32]$CheckPort, [bool]$EnhancedHealthChecks, [Int32]$RsMinimum, [ValidateRange(0, 2)] [Int16]$ClientCert, [bool]$Compress, [string]$Cookie, [ValidateRange(0, 100)] [Int16]$CachePercent, [string]$DefaultGW, [bool]$Enable, [string]$ErrorCode, [string]$ErrorUrl, [ValidateRange(3, 65530)] [Int32]$PortFollow, [bool]$ForceL7, [ValidateRange(0, 86400)] [Int32]$Idletime, [String[]]$LocalBindAddresses, [ValidateSet("gen", "http", "tls", "ts")] [string]$VSType, [string]$Nickname, [ValidateSet("none", "ssl", "cookie", "active-cookie", "cookie-src", "active-cook-src", "cookie-hash", "url", "query-hash", "host", "header", "super", "super-src", "src", "rdp", "rdp-src", "rdp-sb", "udpsip")] [string]$Persist, [ValidateRange(0, 604800)] [Int32]$PersistTimeout, [string]$QueryTag, [string]$CipherSet, [bool]$SSLReencrypt, [bool]$SSLReverse, [ValidateSet("", "http", "https")] [string]$SSLRewrite, [string]$ReverseSNIHostname, [ValidateSet("rr", "wrr", "lc", "wlc", "fixed", "adaptive", "sh")] [string]$Schedule, [ValidateRange(0, 5)] [Int16]$ServerInit, [bool]$SSLAcceleration, [string]$StandByAddr, [string]$StandByPort, [Int32]$TransactionLimit, [bool]$Transparent, [bool]$SubnetOriginating, [bool]$UseforSnat, [ValidateSet("0", "1", "2", "4", "8")] [string]$QoS, [int32]$CheckUseGet, [ValidateRange(0, 7)] [Int16]$Verify, [string]$ExtraHdrKey, [string]$ExtraHdrValue, [string]$AllowedHosts, [string]$AllowedDirectories, [string]$AllowedGroups, [string]$GroupSIDs, [bool]$IncludeNestedGroups, [bool]$DisplayPubPriv, [bool]$DisablePasswordForm, [string]$Domain, [string]$AltDomains, [string]$Logoff, [ValidateRange(0, 7)] [Int16]$ESPLogs, [string]$SMTPAllowedDomains, [bool]$ESPEnabled, [string]$UserPwdChangeUrl, [string]$UserPwdChangeMsg, [ValidateRange(0, 5)] [Int16]$InputAuthMode, [ValidateRange(0, 1)] [Int16]$OutputAuthMode, [ValidateRange(0, 1)] [Int16]$StartTLSMode, [string]$ExtraPorts, [string]$AltAddress, [bool]$MultiConnect, [string]$SingleSignOnDir, [string]$OCSPVerify, [Int32]$FollowVSID, [bool]$TlsType = $false, [string]$CheckPostData, [string]$CheckCodes, [string]$PreProcPrecedence, [Int16]$PreProcPrecedencePos, [string]$RequestPrecedence, [Int16]$RequestPrecedencePos, [string]$ResponsePrecedence, [Int16]$ResponsePrecedencePos, [string]$RsRulePrecedence, [Int16]$RsRulePrecedencePos, [bool]$NeedHostName, [string]$CopyHdrFrom, [string]$CopyHdrTo, [string]$ServerFbaPath, [string]$ServerFbaPost, [bool]$Intercept, [bool]$AllowHTTP2, [ValidateNotNullOrEmpty()] [string]$InterceptOpts, [ValidateNotNullOrEmpty()] [string]$InterceptRules, [ValidateRange(0, 100000)] [int32]$AlertThreshold, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-AdcVirtualService" } Export-ModuleMember -function Set-VirtualService Function Remove-VirtualService { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [Parameter(ParameterSetName="IPAddress",ValueFromPipelineByPropertyName=$true)] [Parameter(ParameterSetName="Credential")] [Parameter(ParameterSetName="Certificate")] [string]$VirtualService, [Parameter(ParameterSetName="IPAddress",ValueFromPipelineByPropertyName=$true)] [Parameter(ParameterSetName="Credential")] [Parameter(ParameterSetName="Certificate")] [ValidateRange(3, 65530)] [Int32]$VSPort, [Parameter(ParameterSetName="IPAddress",ValueFromPipelineByPropertyName=$true)] [Parameter(ParameterSetName="Credential")] [Parameter(ParameterSetName="Certificate")] [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Parameter(ParameterSetName="Index",ValueFromPipelineByPropertyName=$true)] [Parameter(ParameterSetName="Credential")] [Parameter(ParameterSetName="Certificate")] [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-AdcVirtualService" } Export-ModuleMember -function Remove-VirtualService Function New-RealServer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RealServer, [Parameter(Mandatory=$true)] [ValidateRange(3, 65530)] [Int32]$RealServerPort, [ValidateRange(1, 65530)] [Int32]$Weight, [ValidateSet("nat", "route")] [string]$Forward = "nat", [bool]$Enable = $true, [bool]$Non_Local = $false, [ValidateRange(0, 100000)] [Int64]$Limit = 0, [bool]$Critical, [ValidateRange(0, 65535)] [Int32]$Follow, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcRealServe" } Export-ModuleMember -function New-RealServer Function Remove-RealServer { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$RealServer, [ValidateRange(3, 65530)] [Int32]$RealServerPort, [Int32]$RSIndex = -1, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-AdcRealServer" } Export-ModuleMember -function Remove-RealServer Function Set-RealServer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$RealServer, [ValidateRange(3, 65530)] [Int32]$RealServerPort, [Int32]$RSIndex = -1, [ValidateRange(3, 65530)] [Int32]$NewPort, [ValidateRange(1, 65530)] [Int32]$Weight, [ValidateSet("nat", "route")] [string]$Forward = "nat", [bool]$Enable = $true, [ValidateRange(0, 100000)] [Int64]$Limit = 0, [bool]$Critical, [ValidateRange(0, 65535)] [Int32]$Follow, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-AdcRealServer" } Export-ModuleMember -function Set-RealServer Function Get-RealServer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [String]$VSProtocol, [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$RealServer, [ValidateRange(3, 65530)] [Int32]$RSPort, [Int32]$RSIndex = -1, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcRealServer" } Export-ModuleMember -function Get-RealServer Function Enable-RealServer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RSIpAddress, [ValidateRange(3, 65530)] [Int32]$RSPort, [ValidateNotNullOrEmpty()] [string]$RSFqdn, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Enable-AdcRealServer" } Export-ModuleMember -function Enable-RealServer Function Disable-RealServer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RSIpaddress, [ValidateRange(3, 65530)] [Int32]$RSPort, [ValidateNotNullOrEmpty()] [string]$RSFqdn, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Disable-AdcRealServer" } Export-ModuleMember -function Disable-RealServer Function Remove-AdcVirtualServerRule { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [Parameter(Mandatory=$true)] [ValidateSet("pre", "response", "request")] [string]$RuleType, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RuleName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-AdcVirtualServiceRule" } Export-ModuleMember -function Remove-AdcVirtualServerRule Function Remove-VirtualServerRule { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [Parameter(Mandatory=$true)] [ValidateSet("pre", "response", "request")] [string]$RuleType, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RuleName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-AdcVirtualServiceRule" } Export-ModuleMember -function Remove-VirtualServerRule Function New-RealServerRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$RealServer, [ValidateRange(3, 65530)] [Int32]$RSPort, [Int32]$RSIndex = -1, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RuleName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcRealServerRule" } Export-ModuleMember -function New-RealServerRule Function Remove-RealServerRule { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$VirtualService, [ValidateRange(3, 65530)] [Int32]$VSPort, [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Int32]$VSIndex = -1, [ValidateNotNullOrEmpty()] [string]$RealServer, [ValidateRange(3, 65530)] [Int32]$RSPort, [Int32]$RSIndex = -1, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RuleName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-AdcRealServerRule" } Export-ModuleMember -function Remove-RealServerRule Function New-Rule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [Parameter(Mandatory=$true)] [string]$RuleName, [ValidateSet("regex", "prefix", "postfix")] [string]$MatchType = "regex", [bool]$IncHost = $false, [bool]$NoCase = $false, [bool]$Negate = $false, [bool]$IncQuery = $false, [string]$Header, [string]$Pattern, [string]$Replacement, [ValidateRange(0, 5)] [Int32]$Type, # TODO: to change Type to RuleType. Pay attention to the mapping # to add values range # EVEN BETTER: set the RuleType to string as in Get-AdcContentRule with the # same values and maps the string type to the corrispondent integer value. [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcContentRule" } Export-ModuleMember -function New-Rule Function Remove-Rule { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [Parameter(Mandatory=$true, ValueFromPipeline=$true)] [string]$RuleName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-AdcContentRule" } Export-ModuleMember -function Remove-Rule Function Set-Rule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [Parameter(Mandatory=$true)] [string]$RuleName, [ValidateSet("regex", "prefix", "postfix")] [string]$MatchType = "regex", [bool]$IncHost, [bool]$NoCase, [bool]$Negate, [bool]$IncQuery, [string]$Header, [string]$Pattern, [string]$Replacement, [ValidateRange(0, 5)] [Int32]$Type, # TODO: to change Type to RuleType. Pay attention to the mapping # to add values range # EVEN BETTER: set the RuleType to string as in Get-AdcContentRule with the # same values and maps the string type to the corrispondent integer value. [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-AdcContentRule" } Export-ModuleMember -function Set-Rule Function Get-Rule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$RuleName, [ValidateSet("MatchContentRule", "AddHeaderRule", "DeleteHeaderRule", "ReplaceHeaderRule", "ModifyUrlRule", "ReplaceBodyRule")] [string]$RuleType, [switch]$All, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcContentRule" } Export-ModuleMember -function Get-Rule Function Get-L7Configuration { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcL7Configuration" } Export-ModuleMember -function Get-L7Configuration Function Set-L7Configuration { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [bool]$ScalingOver64KConnections, [ValidateSet("No", "Yes", "Yes - Accept Changes")] [string]$AlwaysCheckPersist, [bool]$AddPortToActiveCookie, [bool]$RFCConform, [bool]$CloseOnError, [bool]$AddViaHeaderInCacheResponses, [bool]$RSAreLocal, [bool]$DropOnRSFail, [bool]$DropAtDrainEnd, [ValidateRange(30, 300)] [Int16]$L7AuthTimeoutSecs, [ValidateRange(60, 300)] [Int16]$L7ClientTokenTimeoutSecs, [int]$L7ConnectionDrainTimeoutSecs, [ValidateSet("X-ClientSide", "X-Forwarded-For", "None")] [string]$AdditionalL7Header, [ValidateSet("RFC-2616 Compliant", "Require 100-Continue", "RFC-7231 Compliant")] [string]$OneHundredContinueHandling, [bool]$AllowEmptyPosts, [bool]$AllowEmptyHttpHeaders, [bool]$ForceCompleteRSMatch, [ValidateRange(0, 600)] [Int16]$SlowStart, [bool]$ShareSubVSPersistance, #[bool]$Transparent, # FIXME: still available? [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-AdcL7Configuration" } Export-ModuleMember -function Set-L7Configuration Function Get-LogSplitInterval { [cmdletbinding(DefaultParameterSetName='Credential')] param( [validatenotnullorempty()] [string]$LoadBalancer = $loadbalanceraddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcL7LogInsightSplitConfiguration" } Export-ModuleMember -function Get-LogSplitInterval Function Set-LogSplitInterval { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$logsplitinterval, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcL7LogInsightSplitConfiguration" } Export-ModuleMember -function Set-LogSplitInterval Function Get-ServiceHealth { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcServiceHealth" } Export-ModuleMember -function Get-ServiceHealth Function Set-ServiceHealth { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateRange(9, 120)] [Int16]$CheckInterval, [ValidateRange(4, 60)] [Int16]$ConnectTimeout, [ValidateRange(2, 15)] [Int16]$RetryCount, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-AdcServiceHealth" } Export-ModuleMember -function Set-ServiceHealth Function Add-NoCompressExtension { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true,ValueFromPipeline=$true)] [ValidatePattern({^\.})] [String[]]$Extension, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcHttpCompressionException" } Export-ModuleMember -function Add-NoCompressExtension Function Remove-NoCompressExtension { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true,ValueFromPipeline=$true)] [ValidatePattern({^\.})] [String[]]$Extension, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-AdcServiceHealth" } Export-ModuleMember -function Remove-NoCompressExtension Function Add-NoCacheExtension { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true, ValueFromPipeline=$true)] [ValidatePattern({^\.})] [String[]]$Extension, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcHttpCacheException" } Export-ModuleMember -function Add-NoCacheExtension Function Remove-NoCacheExtension { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true, ValueFromPipeline=$true)] [ValidatePattern({^\.})] [String[]]$Extension, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-AdcHttpCacheException" } Export-ModuleMember -function Remove-NoCacheExtension Function Get-AdaptiveCheck { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcAdaptiveHealthCheck" } Export-ModuleMember -function Get-AdaptiveCheck Function Set-AdaptiveCheck { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$AdaptiveURL, [Int32]$AdaptivePort, [ValidateRange(10, 60)] [Int32]$AdaptiveInterval, [Int16]$MinPercent, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-AdcAdaptiveHealthCheck" } Export-ModuleMember -function Set-AdaptiveCheck Function VSAddWafRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$VS, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$VSPort, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Parameter(Mandatory=$true)] [string]$Rule, [ValidateNotNullOrEmpty()] [string]$Enablerules, [ValidateNotNullOrEmpty()] [string]$Disablerules, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-AdcVsWafRule" } Export-ModuleMember -function VSAddWafRule Function VSRemoveWafRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$VS, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$VSPort, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Rule, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-AdcVsWafRule" } Export-ModuleMember -function VSRemoveWafRule Function VSListWafRuleIds { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$VS, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$VSPort, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [ValidateSet("tcp", "udp")] [string]$VSProtocol, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Rule, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-AdcVsWafRule" } Export-ModuleMember -function VSListWafRuleIds # ================================================== # endregion ADC # ================================================== # ================================================== # region SECURITY # ================================================== Function Set-AdminAccess { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateRange(0, 99)] [Int32]$WuiNetworkInterfaceId = -1, [Parameter(Mandatory=$true)] [ValidateRange(3, 65530)] [int32]$WuiPort = -1, [string]$WuiDefaultGateway, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-SecAdminAccess" } Export-ModuleMember -function Set-AdminAccess Function Get-WUIAuth { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-SecWuiAuthentication" } Export-ModuleMember -function Get-WUIAuth Function Set-WUIAuth { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$RADIUSServer, [ValidateRange(3, 65530)] [Int64]$RADIUSPort, [string]$RADIUSSecret, [string]$RADIUSBackupServer, [ValidateRange(3, 65530)] [Int64]$RADIUSBackupPort, [string]$RADIUSBackupSecret, [int]$RADIUSRevalidateInterval, [string]$WuiLdapEp, [bool]$SessionLocalAuth, [ValidateSet(7, 22, 23, 262, 263, 278, 279, 772, 773, 774, 775, 788, 789, 790, 791)] [Int16]$SessionAuthMode, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-SecWuiAuthentication" } Export-ModuleMember -function Set-WUIAuth Function Get-WUISetting { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-SecAdminWuiConfiguration" } Export-ModuleMember -function Get-WUISetting Function Set-WUISetting { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateRange(0, 14)] [int]$WUITLSProtocols, [ValidateSet("Default", "Default_NoRc4", "BestPractices", "Intermediate_compatibility", "Backward_compatibility", "WUI", "FIPS", "Legacy")] [string]$WUICipherset, [bool]$sessioncontrol, [bool]$sessionbasicauth, [ValidateRange(1, 999)] [Int16]$sessionmaxfailattempts, [ValidateRange(60, 86400)] [Int32]$sessionidletime, [ValidateRange(0, 9)] [Int16]$sessionconcurrent, [string]$wuipreauth, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-SecAdminWuiConfiguration" } Export-ModuleMember -function Set-WUISetting Function UserSetSystemPassword { [CmdletBinding()] Param( [Parameter(Mandatory=$true)] [String]$CurrentPassword, [Parameter(Mandatory=$true)] [String]$NewPassword, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred ) Write-Output "$warning Set-SecSystemUserPassword" } Export-ModuleMember -function UserSetSystemPassword Function UserSetPermissions { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [String]$User, [Parameter(Mandatory=$true)] [String]$Permissions, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-SecUserPermission" } Export-ModuleMember -function UserSetPermissions Function UserChangeLocalPassword { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [String]$User, [Parameter(Mandatory=$true)] [String]$Password, [Parameter(Mandatory=$true)] [ValidateRange(0, 1)] [int]$Radius, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-SecUserPassword" } Export-ModuleMember -function UserChangeLocalPassword # ================================================== # endregion SECURITY # ================================================== # ================================================== # region SYSTEM # ================================================== Function Initialize-LoadBalancer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Address, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = 443, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = [System.Management.Automation.PSCredential]::Empty, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $null, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $null ) Write-Output "$warning Initialize-LmConnectionParameters" } Export-ModuleMember -function Initialize-LoadBalancer Function Test-ServerConnection { [CmdletBinding()] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$ComputerName, [ValidateRange(3, 65530)] [Int32]$Port ) Write-Output "$warning Test-LmServerConnection" } Export-ModuleMember -function Test-ServerConnection # ================================================== # endregion SYSTEM # ================================================== # ================================================== # region GET-SET # ================================================== Function Get-AllParameters { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmAllParameters" } Export-ModuleMember -function Get-AllParameters, Get-AllParameters Function Get-Parameter { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Param, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmParameter" } Export-ModuleMember -function Get-Parameter Function Set-Parameter { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Param, [Parameter(Mandatory=$true)] [AllowEmptyString()] [String]$Value = "", [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmParameter" } Export-ModuleMember -function Set-Parameter # ================================================== # endregion GET-SET # ================================================== # ================================================== # region TLS # ================================================== Function New-Certificate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Name, [string]$Password, [switch]$Replace, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-TlsCertificate" } Export-ModuleMember -function New-Certificate Function ListCert { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$CertName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-TlsCertificate" } Export-ModuleMember -function ListCert Function Remove-Certificate { [cmdletbinding(SupportsShouldProcess=$true,ConfirmImpact="High",DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-TlsCertificate" } Export-ModuleMember -function Remove-Certificate Function Backup-Certificate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateLength(6, 64)] [string]$Password, [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Backup-TlsCertificate" } Export-ModuleMember -function Backup-Certificate Function Restore-Certificate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateLength(6, 64)] [string]$Password, [ValidateScript({Test-Path $_})] [string]$Path, [Parameter(Mandatory=$true)] [ValidateSet("Full", "VS", "Third")] [string]$Type, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Restore-TlsCertificate" } Export-ModuleMember -function Restore-Certificate Function New-IntermediateCertificate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$Name, [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-TlsIntermediateCertificate" } Export-ModuleMember -function New-IntermediateCertificate Function Remove-IntermediateCertificate { [cmdletbinding(SupportsShouldProcess=$true,ConfirmImpact="High",DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Remove-TlsIntermediateCertificate" } Export-ModuleMember -function Remove-IntermediateCertificate Function GetCipherset { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-TlsCipherSet" } Export-ModuleMember -function GetCipherset Function ModifyCipherset { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Value, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-TlsCipherSet" } Export-ModuleMember -function ModifyCipherset Function DelCipherset { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-TlsCipherSet" } Export-ModuleMember -function DelCipherset Function HSMShow { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-TlsHSM" } Export-ModuleMember -function HSMShow Function HSMConfigure { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [String]$Sethsm, [String]$Safeaddr, [String]$Clpass, [bool]$Enable, [String]$Cavhsmaddr, [String]$Cavhsmpasswd, [String]$Cavhsmuser, [bool]$Cavhsmenable, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-TlsHSM" } Export-ModuleMember -function HSMConfigure Function HSMGenerateClientCert { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$Path, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Clcertname, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning New-TlsHSMClientCert" } Export-ModuleMember -function HSMGenerateClientCert Function HSMUploadCACert { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateScript({Test-Path $_})] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-TlsHSMCACert" } Export-ModuleMember -function HSMUploadCACert # ================================================== # endregion TLS # ================================================== # ================================================== # region WAF # ================================================== Function ListWafRules { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-WafRules" } Export-ModuleMember -function ListWafRules Function AddWafCustomData { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateScript({Test-Path $_})] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-WafCustomRuleData" } Export-ModuleMember -function AddWafCustomData Function DownloadWafCustomData { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$Path, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RuleDataName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Export-WafCustomRuleData" } Export-ModuleMember -function DownloadWafCustomData Function DelWafCustomData { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Filename, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Uninstall-WafCustomRuleData" } Export-ModuleMember -function DelWafCustomData Function AddWafCustomRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateScript({Test-Path $_})] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-WafCustomRuleSet" } Export-ModuleMember -function AddWafCustomRule Function DelWafCustomRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Filename, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Uninstall-WafCustomRuleSet" } Export-ModuleMember -function DelWafCustomRule Function DownloadWafCustomRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$Path, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RuleSetName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Export-WafCustomRuleSet" } Export-ModuleMember -function DownloadWafCustomRule Function EnableWafRemoteLogging { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$RemoteURI, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Username, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Passwd, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Enable-WafRemoteLogging" } Export-ModuleMember -function EnableWafRemoteLogging Function DisableWafRemoteLogging { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Disable-WafRemoteLogging" } Export-ModuleMember -function DisableWafRemoteLogging Function ListWafAuditFiles { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-WafAuditFiles" } Export-ModuleMember -function ListWafAuditFiles Function DownloadWafAuditLog { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$Path, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$AuditFile, [string]$Filter, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Export-WafAuditLog" } Export-ModuleMember -function DownloadWafAuditLog Function GetWafChangeLog { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Export-WafChangeLog" } Export-ModuleMember -function GetWafChangeLog Function ManInstallWafRules { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Install-WafRulesDatabase" } Export-ModuleMember -function ManInstallWafRules Function DownloadWafRules { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Update-WafRulesDatabase" } Export-ModuleMember -function DownloadWafRules Function GetWafSettings { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-WafRulesAutoUpdateConfiguration" } Export-ModuleMember -function GetWafSettings # ================================================== # endregion WAF # ================================================== # ================================================== # region GEO # ================================================== Function AddFQDN { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-GeoFQDN" } Export-ModuleMember -function AddFQDN Function Add-GeoFQDN { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-GeoFQDN" } Export-ModuleMember -function Add-GeoFQDN Function DeleteFQDN { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoFQDN" } Export-ModuleMember -function DeleteFQDN Function ListFQDNs { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$FQDN, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoFQDN" } Export-ModuleMember -function ListFQDNs Function ModifyFQDN { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [ValidateSet("RoundRobin", "WeightedRoundRobin", "FixedWeighting", "RealServerLoad", "Proximity", "LocationBased", "AllAvailable")] [String]$SelectionCriteria, [ValidateRange(0, 1440)] [Int32]$SiteFailureDelay = -1, [ValidateSet("auto", "manual")] [String]$SiteRecoveryMode, [ValidateSet("PublicSitesOnly", "PreferPublicSites", "PreferPrivateSites", "AllSites")] [string]$PublicRequest, [ValidateSet("PrivateSitesOnly", "PreferPrivateSites", "PreferPublicSites", "AllSites")] [string]$PrivateRequest, [String]$Failover, [bool]$LocalSettings, [ValidateRange(1, 86400)] [Int32]$localttl, [ValidateRange(0, 86400)] [Int32]$localsticky, [bool]$UnanimousChecks, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoFQDN" } Export-ModuleMember -function ModifyFQDN Function AddCluster { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$ClusterIp, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$ClusterName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-GeoCluster" } Export-ModuleMember -function AddCluster Function DeleteCluster { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$ClusterIp, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoCluster" } Export-ModuleMember -function DeleteCluster Function Get-GeoCluster { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$ClusterIp, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoCluster" } Export-ModuleMember -function ListClusters Function ShowCluster { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$ClusterIp, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoCluster" } Export-ModuleMember -function ShowCluster Function ModifyCluster { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$ClusterIp, [String]$ClusterName, [ValidateSet("default", "remoteLM", "localLM")] [String]$Type, [ValidateSet("none", "tcp", "icmp")] [String]$Checker, [Int32]$CheckerPort, [String]$Enable, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoCluster" } Export-ModuleMember -function ModifyCluster Function ClusterChangeLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$ClusterIp, [Parameter(Mandatory=$true)] [Int32]$LatSecs, [Parameter(Mandatory=$true)] [Int32]$LongSecs, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoClusterCoordinates" } Export-ModuleMember -function ClusterChangeLocation Function AddMap { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, [string]$Cluster, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-GeoFQDNSiteAddress" } Export-ModuleMember -function AddMap Function DeleteMap { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoFQDNSiteAddress" } Export-ModuleMember -function DeleteMap Function ModifyMap { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, [ValidateSet("None", "Icmp Ping", "Tcp Connect", "Cluster Checks")] [String]$Checker, [Int32]$Weight, [String]$Enable, [String]$Cluster, [String]$Mapaddress, [String]$Mapport, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoFQDNSiteAddress" } Export-ModuleMember -function ModifyMap Function ChangeCheckerAddr { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$CheckerIP, [Parameter(Mandatory=$true,Position=3)] [ValidateNotNullOrEmpty()] [String]$CheckerPort, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoFQDNSiteCheckerAddress" } Export-ModuleMember -function ChangeCheckerAddr Function AddCountry { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, # was IP [ValidateNotNullOrEmpty()] [String]$CountryCode, [ValidateNotNullOrEmpty()] [String]$IsContinent, [ValidateNotNullOrEmpty()] [String]$CustomLocation, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoFQDNSiteCountry" } Export-ModuleMember -function AddCountry Function RemoveCountry { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, [ValidateNotNullOrEmpty()] [String]$CountryCode, [ValidateNotNullOrEmpty()] [String]$IsContinent, [ValidateNotNullOrEmpty()] [String]$CustomLocation, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoFQDNSiteCountry" } Export-ModuleMember -function RemoveCountry Function ChangeMapLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$FQDN, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SiteAddress, [Parameter(Mandatory=$true)] [Int32]$Lat, [Parameter(Mandatory=$true)] [Int32]$Long, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoFQDNSiteCoordinates" } Export-ModuleMember -function ChangeMapLocation Function AddCustomLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Location, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-GeoCustomLocation" } Export-ModuleMember -function AddCustomLocation Function DeleteCustomLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$Location, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoCustomLocation" } Export-ModuleMember -function DeleteCustomLocation Function ListCustomLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoCustomLocation" } Export-ModuleMember -function ListCustomLocation Function EditCustomLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$clOldName, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [string]$clNewName, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoCustomLocation" } Export-ModuleMember -function EditCustomLocation Function AddIP { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-GeoIpRange" } Export-ModuleMember -function AddIP Function DeleteIP { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoIpRange" } Export-ModuleMember -function DeleteIP Function ShowIP { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoIpRange" } Export-ModuleMember -function ShowIP Function ListIPs { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoIpRange" } Export-ModuleMember -function ListIPs Function ModifyIPLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IP, [Parameter(Mandatory=$true)] [Int32]$Lat, [Parameter(Mandatory=$true)] [Int32]$Long, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoIPRangeCoordinates" } Export-ModuleMember -function ModifyIPLocation Function DeleteIPLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoIPRangeCoordinates" } Export-ModuleMember -function DeleteIPLocation Function AddIPCountry { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IP, [Parameter(Mandatory=$true)] [String]$CountryCode, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoIPRangeCountry" } Export-ModuleMember -function AddIPCountry Function RemoveIPCountryCustom { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true,Position=0)] [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoIPRangeCountry" } Export-ModuleMember -function RemoveIPCountryCustom Function Remove-GeoIPRangeCustomLocation { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true,Position=0)] [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoIPRangeCountry" } Export-ModuleMember -function Remove-GeoIPRangeCustomLocation Function RemoveIPCountry { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true,Position=0)] [ValidateNotNullOrEmpty()] [String]$IP, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-GeoIPRangeCountry" } Export-ModuleMember -function RemoveIPCountry Function AddIPCountryCustom { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IP, [Parameter(Mandatory=$true)] [String]$CustomLoc, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoIPRangeCustomLocation" } Export-ModuleMember -function AddIPCountryCustom Function ListMiscParameters { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-GeoMiscParameter" } Export-ModuleMember -function ListMiscParameters Function ModifyMiscParameters { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [String]$SourceOfAuthority, [String]$NameSrv, [String]$SOAEmail, [String]$TTL, [String]$Persist, [String]$CheckInterval, [String]$ConnTimeout, [String]$RetryAttempts, [String]$Zone, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-GeoMiscParameter" } Export-ModuleMember -function ModifyMiscParameters Function LocationDataUpdate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Update-GeoDatabase" } Export-ModuleMember -function LocationDataUpdate Function EnableGEO { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Update-GeoDatabase" } Export-ModuleMember -function EnableGEO Function DisableGEO { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Disable-LmGeoPack" } Export-ModuleMember -function DisableGEO Function IsGEOEnabled { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Disable-LmGeoPack" } Export-ModuleMember -function IsGEOEnabled # ================================================== # endregion GEO # ================================================== # ================================================== # region BACKUP # ================================================== Function Backup-LoadBalancer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$Path, [switch]$Force, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Backup-LmConfiguration" } Export-ModuleMember -function Backup-LoadBalancer Function Restore-LoadBalancer { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateScript({Test-Path $_})] [string]$Path, [Parameter(Mandatory=$true)] [ValidateSet("Base", "Base + VS", "Base + Geo", "VS", "VS + Geo", "Geo", "SSO/LDAP", "All")] [string]$Type, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Restore-LmConfiguration" } Export-ModuleMember -function Restore-LoadBalancer Function Get-BackupOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmBackupConfiguration" } Export-ModuleMember -function Get-BackupOption Function Set-BackupOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateSet("yes", "no")] [string]$BackupEnable, [ValidateRange(0, 23)] [Int16]$BackupHour, [ValidateRange(0, 59)] [Int16]$BackupMinute, [ValidateRange(0, 7)] [Int16]$BackupDay, [ValidateSet("Ftp", "SCP")] [string]$BackupMethod, [string]$BackupUser, [string]$BackupPassword, [string]$BackupHost, [string]$BackupPath, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmBackupConfiguration" } Export-ModuleMember -function Set-BackupOption # ================================================== # endregion BACKUP # ================================================== # ================================================== # region VPN # ================================================== Function CreateVpnConnection { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-LmVpnConnection" } Export-ModuleMember -function CreateVpnConnection Function DeleteVpnConnection { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-LmVpnConnection" } Export-ModuleMember -function DeleteVpnConnection Function ListVpns { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmVpnConnection" } Export-ModuleMember -function ListVpns Function SetVpnAddrs { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$LocalIp, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$LocalSubnets, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RemoteIp, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RemoteSubnets, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnAddrs" } Export-ModuleMember -function SetVpnAddrs Function SetVpnLocalIp { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$LocalIp, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnLocalIp" } Export-ModuleMember -function SetVpnLocalIp Function SetVpnLocalSubnets { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$LocalSubnets, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnLocalIp" } Export-ModuleMember -function SetVpnLocalSubnets Function SetVpnRemoteIp { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RemoteIp, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnRemoteIp" } Export-ModuleMember -function SetVpnRemoteIp Function SetVpnRemoteSubnets { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RemoteSubnets, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnRemoteSubnet" } Export-ModuleMember -function SetVpnRemoteSubnets Function SetVpnSecret { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$LocalId, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$RemoteId, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Key, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnSecret" } Export-ModuleMember -function SetVpnSecret Function StartVpnConnection { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Start-LmVpnConnection" } Export-ModuleMember -function StartVpnConnection Function StopVpnConnection { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Stop-LmVpnConnection" } Export-ModuleMember -function StopVpnConnection Function StartIkeDaemon { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Start-LmVpnIkeDaemon" } Export-ModuleMember -function StartIkeDaemon Function StopIkeDaemon { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Stop-LmVpnIkeDaemon" } Export-ModuleMember -function StopIkeDaemon Function StatusIkeDaemon { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmVpnIkeDaemonStatus" } Export-ModuleMember -function StatusIkeDaemon Function SetVpnPfsEnable { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnPfsEnable" } Export-ModuleMember -function SetVpnPfsEnable Function SetVpnPfsDisable { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmVpnPfsDisable" } Export-ModuleMember -function SetVpnPfsDisable # ================================================== # endregion VPN # ================================================== # ================================================== # region ADDON # ================================================== Function UploadAddon { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Install-LmAddon" } Export-ModuleMember -function UploadAddon Function DeleteAddon { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Name, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-LmAddon" } Export-ModuleMember -function DeleteAddon Function ListAddons { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmAddOn" } Export-ModuleMember -function ListAddons # ================================================== # endregion ADDON # ================================================== # ================================================== # region PATCH # ================================================== Function Install-Patch { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateScript({Test-Path $_})] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Install-LmPatch" } Export-ModuleMember -function Install-Patch Function Restore-Patch { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Uninstall-LmPatch" } Export-ModuleMember -function Restore-Patch Function Restart-LoadBalancer { [cmdletbinding(SupportsShouldProcess=$true, ConfirmImpact="High", DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Shutdown, [switch]$Force, [int]$SleepTime, [int]$Cycles ) Write-Output "$warning Restart-Lm" } Export-ModuleMember -function Restart-LoadBalancer # ================================================== # endregion PATCH # ================================================== # ================================================== # region DATE-TIME # ================================================== Function Get-DateTimeOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmDateTimeConfiguration" } Export-ModuleMember -function Get-DateTimeOption Function Set-DateTimeOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [string]$NTPHost, [string]$TimeZone, [ValidateRange(1, 100)] [int]$NTPKeyId, [string]$NTPKeySecret, [ValidateSet("SHA-1", "MD5")] [string]$NTPKeyType, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmDateTimeConfiguration" } Export-ModuleMember -function Set-DateTimeOption # ================================================== # endregion DATE-TIME # ================================================== # ================================================== # region SDN # ================================================== Function AddSDNController { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$IPV4, [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [Int32]$Port, [Int32]$Clid, [Boolean]$Https, [String]$User, [String]$Password, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-SdnController" } Export-ModuleMember -function AddSDNController Function DeleteSDNController { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Int32]$Clid, [Int32]$Cid, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-SdnController" } Export-ModuleMember -function DeleteSDNController Function ModifySDNController { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [Int32]$Cid, [Int32]$Clid, [String]$IPV4, [Int32]$Port, [Boolean]$Https, [String]$User, [String]$Password, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-SdnController" } Export-ModuleMember -function ModifySDNController Function GetSDNController { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-SdnController" } Export-ModuleMember -function GetSDNController # ================================================== # endregion SDN # ================================================== # ================================================== # region AFE # ================================================== Function Get-AFEConfiguration { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmAFEConfiguration" } Export-ModuleMember -function Get-AFEConfiguration Function Set-AFEConfiguration { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateRange(1, 409)] [Int]$CacheSize, [bool]$HostCache, [ValidateSet("Low - Only logging, no rejection", "Default - Only Critical problems are rejected", "High - Serious and Critical problems are rejected", "Paranoid - All problems detected are rejected")] [string]$DetectionLevel, [ValidateRange(0, 100000)] [Int64]$LimitInput, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmAFEConfiguration" } Export-ModuleMember -function Set-AFEConfiguration Function Update-IDSRule { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateScript({Test-Path -Path $_})] [ValidateNotNullOrEmpty()] [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Update-AFEIDSRules" } Export-ModuleMember -function Update-IDSRule # ================================================== # endregion AFE # ================================================== # ================================================== # region CONNLIMIT # ================================================== Function AfeClientLimitList { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmIPConnectionLimit" } Export-ModuleMember -function AfeClientLimitList Function AfeClientLimitAdd { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [String]$L7addr, [Parameter(Mandatory=$true)] [int32]$L7limit, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-LmIPConnectionLimit" } Export-ModuleMember -function AfeClientLimitAdd Function AfeClientLimitDelete { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [String]$L7addr, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-LmIPConnectionLimit" } Export-ModuleMember -function AfeClientLimitDelete # ================================================== # endregion CONNLIMIT # ================================================== # ================================================== # region CLUSTER # ================================================== Function Get-HAOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmHAConfiguration" } Export-ModuleMember -function Get-HAOption Function Set-HAOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateSet(3, 6, 9, 12, 15)] [Int16]$hatimeout, [ValidateRange(0, 180)] [Int16]$hawait, [ValidateRange(1, 255)] [Int16]$havhid, [ValidateSet("No Preferred Host", "Prefer First HA", "Prefer Second HA")] [string]$haprefered, [Int16]$haif, [bool]$hal4update, [bool]$hal7update, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmHAConfiguration" } Export-ModuleMember -function Set-HAOption Function Set-AzureHAMode { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateSet("master", "slave", "single")] [string]$HAMode, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmAzureHAMode" } Export-ModuleMember -function Set-AzureHAMode Function Get-AzureHAOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmAzureHAConfiguration" } Export-ModuleMember -function Get-AzureHAOption Function Set-AzureHAOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$Partner, [ValidateNotNullOrEmpty()] [string]$Hcp, [ValidateNotNullOrEmpty()] [ValidateRange(0, 1)] [int]$haprefered, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmAzureHAConfiguration" } Export-ModuleMember -function Set-AzureHAOption Function Set-AwsHAMode { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateSet("master", "slave", "single")] [string]$HAMode, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmAwsHAMode" } Export-ModuleMember -function Set-AwsHAMode Function Get-AwsHAOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmAwsHAConfiguration" } Export-ModuleMember -function Get-AwsHAOption Function Set-AwsHAOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$Partner, [ValidateNotNullOrEmpty()] [string]$HealthCheckPort, [ValidateNotNullOrEmpty()] [ValidateRange(0, 1)] [int]$haprefered, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmAwsHAConfiguration" } Export-ModuleMember -function Set-AwsHAOption # ================================================== # endregion CLUSTER # ================================================== # ================================================== # region DIAGNOSTIC # ================================================== Function Get-DebugOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-LmDebugConfiguration" } Export-ModuleMember -function Get-DebugOption Function Set-DebugOption { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [bool]$transparent, [bool]$irqbalance, [bool]$linearesplogs, [string]$netconsole, [Int16]$netconsoleinterface, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Set-LmDebugConfiguration" } Export-ModuleMember -function Set-DebugOption Function DoTcpDump { [cmdletbinding(SupportsShouldProcess=$true, DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [ValidateRange(1, 200000)] [int]$MaxPackets, [ValidateNotNullOrEmpty()] [ValidateRange(1, 600)] [int]$MaxTime, [ValidateNotNullOrEmpty()] [string]$Interface, [ValidateNotNullOrEmpty()] [string]$Port, [ValidateNotNullOrEmpty()] [string]$Address, [ValidateNotNullOrEmpty()] [string]$TcpOptions, [string]$Path, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN, [switch]$Force ) Write-Output "$warning Trace-TcpTraffic" } Export-ModuleMember -function DoTcpDump # ================================================== # endregion DIAGNOSTIC # ================================================== # ================================================== # region N+M # ================================================== Function NMClusterStatus { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Get-ClusterStatus" } Export-ModuleMember -function NMClusterStatus Function NMClusterCreate { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$SharedAddress, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-Cluster" } Export-ModuleMember -function NMClusterCreate Function NMAddNode { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [String]$Address, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning New-ClusterNode" } Export-ModuleMember -function NMAddNode Function NMJoinCluster { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Join-Cluster" } Export-ModuleMember -function NMJoinCluster Function NMEnableNode { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [Int32]$NodeId, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Enable-ClusterNode" } Export-ModuleMember -function NMEnableNode Function NMDisableNode { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [Int32]$NodeId, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Disable-ClusterNode" } Export-ModuleMember -function NMDisableNode Function NMDeleteNode { [cmdletbinding(DefaultParameterSetName='Credential')] Param( [Parameter(Mandatory=$true)] [ValidateNotNullOrEmpty()] [Int32]$NodeId, [ValidateNotNullOrEmpty()] [string]$LoadBalancer = $LoadBalancerAddress, [ValidateNotNullOrEmpty()] [ValidateRange(3, 65530)] [int]$LBPort = $LBAccessPort, [Parameter(ParameterSetName="Credential")] [ValidateNotNullOrEmpty()] [System.Management.Automation.Credential()]$Credential = $script:cred, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$CertificateStoreLocation = $script:CertificateStoreLocation, [Parameter(ParameterSetName="Certificate")] [ValidateNotNullOrEmpty()] [String]$SubjectCN = $script:SubjectCN ) Write-Output "$warning Remove-ClusterNode" } Export-ModuleMember -function NMDeleteNode # ================================================== # endregion N+M # ================================================== # SIG # Begin signature block # MIIcDQYJKoZIhvcNAQcCoIIb/jCCG/oCAQExDzANBglghkgBZQMEAgEFADB5Bgor # BgEEAYI3AgEEoGswaTA0BgorBgEEAYI3AgEeMCYCAwEAAAQQH8w7YFlLCE63JNLG # KX7zUQIBAAIBAAIBAAIBAAIBADAxMA0GCWCGSAFlAwQCAQUABCDproCmbHORq7dN # rCvi71htoutFNbUcZ1oxnmMNGCABJaCCCuMwggVWMIIEPqADAgECAhAZGjLLdZyX # uM+sEY3VEn9JMA0GCSqGSIb3DQEBCwUAMIHKMQswCQYDVQQGEwJVUzEXMBUGA1UE # ChMOVmVyaVNpZ24sIEluYy4xHzAdBgNVBAsTFlZlcmlTaWduIFRydXN0IE5ldHdv # cmsxOjA4BgNVBAsTMShjKSAyMDA2IFZlcmlTaWduLCBJbmMuIC0gRm9yIGF1dGhv # cml6ZWQgdXNlIG9ubHkxRTBDBgNVBAMTPFZlcmlTaWduIENsYXNzIDMgUHVibGlj # IFByaW1hcnkgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgLSBHNTAeFw0xNDAzMDQw # MDAwMDBaFw0yNDAzMDMyMzU5NTlaMIGRMQswCQYDVQQGEwJVUzEdMBsGA1UEChMU # U3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5l # dHdvcmsxQjBABgNVBAMTOVN5bWFudGVjIENsYXNzIDMgRXh0ZW5kZWQgVmFsaWRh # dGlvbiBDb2RlIFNpZ25pbmcgQ0EgLSBHMjCCASIwDQYJKoZIhvcNAQEBBQADggEP # ADCCAQoCggEBANAYAu7too0IWGMPJtfdInuI9uTH7DsmGHjTx6QgU42DfKU/fqXI # K0ffDfWm2cMdJZNgz3zc6gMsvnh/XEhtpwLZSfih6+uaYXyfwCbW3BXYuBB8ILpe # 9Cj2qOqnXHzGnJCQNDy2Iqz+ugw6HtZehLZb8KOBcHiKjUZSe/zbSfMpExF0T40W # s8LjoC3HAwSdzMNy4Q4M+wKO8SYXe26u+Lczi6ZhS0Xf8iVEx/ewmCM23Ch5Cuib # coio2Oiue38KZEWl8FeSmncGRR7rn+hm83p9koFfAC0euPZWE1piDbdHoY9y74Ne # guCUmOGspa2GN+Cn07qxPnrrRajxwUR94gMCAwEAAaOCAW0wggFpMBIGA1UdEwEB # /wQIMAYBAf8CAQAwLwYDVR0fBCgwJjAkoCKgIIYeaHR0cDovL3Muc3ltY2IuY29t # L3BjYTMtZzUuY3JsMBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMDMA4GA1UdDwEB/wQE # AwIBBjAuBggrBgEFBQcBAQQiMCAwHgYIKwYBBQUHMAGGEmh0dHA6Ly9zLnN5bWNk # LmNvbTBfBgNVHSAEWDBWMFQGBFUdIAAwTDAjBggrBgEFBQcCARYXaHR0cHM6Ly9k # LnN5bWNiLmNvbS9jcHMwJQYIKwYBBQUHAgIwGRoXaHR0cHM6Ly9kLnN5bWNiLmNv # bS9ycGEwKQYDVR0RBCIwIKQeMBwxGjAYBgNVBAMTEVN5bWFudGVjUEtJLTEtNjI5 # MB0GA1UdDgQWBBQWZt5KNONQpxGGA7FsqcaszVlumzAfBgNVHSMEGDAWgBR/02Wn # wt3su/AwCfNDOfoCrzMxMzANBgkqhkiG9w0BAQsFAAOCAQEAP1sZ8/oT1XU4Klru # n1qgTKkdxcyU7t4V/vUQbqQbpWSDVBhYxAsooYXDTnTl/4l8/tXtPLpxn1YCJo8W # Koj+sKMnIs5L4jiOAKY6hl+d5T6o3mRJQXRBIf0HyIQX2h1lMILLJk851gQnpIGx # S0nDI4t+AjIYJ7erC/MYcrak7mcGbzimWI3g8X5dpGDGqOVQX+DouuKPmVi2taCo # dvGi8RyIQXJ+UpebCjaZjVD3Aes85/AiauU1jGM2ihqx2WdmX5ca76ggnfAvumzO # 2ZSFAPFY8X3JfCK1B10CxuYLv6uTk/8nGI4zNn5XNPHDrwTBhPFWs+iHgzb40wox # 3G4sbTCCBYUwggRtoAMCAQICECeDjyzMAJ09C7Adbyi1uUkwDQYJKoZIhvcNAQEL # BQAwgZExCzAJBgNVBAYTAlVTMR0wGwYDVQQKExRTeW1hbnRlYyBDb3Jwb3JhdGlv # bjEfMB0GA1UECxMWU3ltYW50ZWMgVHJ1c3QgTmV0d29yazFCMEAGA1UEAxM5U3lt # YW50ZWMgQ2xhc3MgMyBFeHRlbmRlZCBWYWxpZGF0aW9uIENvZGUgU2lnbmluZyBD # QSAtIEcyMB4XDTE2MTAwNTAwMDAwMFoXDTE3MTAwNTIzNTk1OVowgdYxEzARBgsr # BgEEAYI3PAIBAxMCVVMxGTAXBgsrBgEEAYI3PAIBAhMIRGVsYXdhcmUxHTAbBgNV # BA8TFFByaXZhdGUgT3JnYW5pemF0aW9uMRAwDgYDVQQFEwc1MDg0MDMyMQswCQYD # VQQGEwJVUzERMA8GA1UECAwITmV3IFlvcmsxETAPBgNVBAcMCE5ldyBZb3JrMR8w # HQYDVQQKDBZLRU1QIFRlY2hub2xvZ2llcyBJbmMuMR8wHQYDVQQDDBZLRU1QIFRl # Y2hub2xvZ2llcyBJbmMuMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA # zUcerldV4VKZ+xPtYfy3/HwbSLJu8HS2urs4QUEF41PJYl50P/+ePYKpuOcksc2l # n45YO5/zrKTcjgzxMxJhrNDDAelPeZjiDlkidj6a79msxMXjRzIAI8A4b5SpKBKc # 7GVANCt0HZlEWjYegiaVjA6fRJFTRuJVr+K1fc1M79mgARNPCLOuy21N7d+MNvOl # nfBlvRGJZC2CQeeXHjhh/q8RdPmVqXliG8zkIIX+wq+kyVSO1ngYsDJZ4iMmjpCA # QzdT564zK8potK4fjPblYDiiEtUR1wGg6g4l2X18Mci21of4RbWBKQ/hxQm6oprA # XBraFsYnwwwt8QSl9+UtmQIDAQABo4IBkDCCAYwwLgYDVR0RBCcwJaAjBggrBgEF # BQcIA6AXMBUME1VTLURFTEFXQVJFLTUwODQwMzIwCQYDVR0TBAIwADAOBgNVHQ8B # Af8EBAMCB4AwKwYDVR0fBCQwIjAgoB6gHIYaaHR0cDovL3N3LnN5bWNiLmNvbS9z # dy5jcmwwYAYDVR0gBFkwVzBVBgVngQwBAzBMMCMGCCsGAQUFBwIBFhdodHRwczov # L2Quc3ltY2IuY29tL2NwczAlBggrBgEFBQcCAjAZDBdodHRwczovL2Quc3ltY2Iu # Y29tL3JwYTAWBgNVHSUBAf8EDDAKBggrBgEFBQcDAzAfBgNVHSMEGDAWgBQWZt5K # NONQpxGGA7FsqcaszVlumzAdBgNVHQ4EFgQUu/UpUEJhq9Dx+3CC/n6LPC3FyRYw # WAYIKwYBBQUHAQEETDBKMB8GCCsGAQUFBzABhhNodHRwOi8vc3cuc3ltY2QuY29t # MCcGCCsGAQUFBzAChhtodHRwOi8vc3cxLnN5bWNiLmNvbS9zdy5jcnQwDQYJKoZI # hvcNAQELBQADggEBAF/gxzrK67CSW740OGSXAC4/NzRVcP5RmONNEXIjmYEowtgN # UtXAns9olC+uzborP1Pq7MvZKMC0CW5P8GsloeqVGjRQ2IPFiEvLAagQO5HVzDMA # NZeuTNS5At5i+MkqkW+sLoVH+tBVDhbn17sH2mX0wXid4NCOojyVA1FarE0gup+v # XjhwBlXQPRU2K49cmd6dryN1GGufmiXJC25fggZ+2lc0A+j1mBfN9lsMVe7ZYgvW # o1WyWM/K66ga8FC9MIpv2tzVQc5Oy0UysQtnHykfRuAA5yXHaiXejx2uF5/5LWR1 # s53Zchz0LXsZ+ndn4Utg0e2T9iRyuW7Sw7jek4sxghCAMIIQfAIBATCBpjCBkTEL # MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMR8wHQYD # VQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMUIwQAYDVQQDEzlTeW1hbnRlYyBD # bGFzcyAzIEV4dGVuZGVkIFZhbGlkYXRpb24gQ29kZSBTaWduaW5nIENBIC0gRzIC # ECeDjyzMAJ09C7Adbyi1uUkwDQYJYIZIAWUDBAIBBQCgfDAQBgorBgEEAYI3AgEM # MQIwADAZBgkqhkiG9w0BCQMxDAYKKwYBBAGCNwIBBDAcBgorBgEEAYI3AgELMQ4w # DAYKKwYBBAGCNwIBFTAvBgkqhkiG9w0BCQQxIgQgTWpulaW38EfEXNeVA1fN7aFp # SKe1UWvCrZzj5nHvoBIwDQYJKoZIhvcNAQEBBQAEggEAa+FCIrOPR8sC+zW/IcXY # 0xRkJTlKobcyIXBSH0UMIWNRVuBYwxeBRGxiqiz5KAQctQn4otz7K+aCkBo/Am2S # cFuLkVKdhHQwpFWykuEtApgd1GG1jE1aCAZ2g2TTwzjnQDtg9Eah60MpzJe6xr4Q # WyDqbclITMgq8vtVkvRSrmFF3i5FjZpQUL2P2uBD62X9aSrsmbo1GVHIGk6+hrwZ # Px2hLlWJmrnKWa499kxH3Vroy9i6x5rSzSqjnDO+pPBrSCputzbFmW5e5CFVB1qh # f9fFmA8SxRoq/peUU/ZuBn2y95U89ELMg7e48dc60T9BBShw4034J02IxkD6iliz # aqGCDiwwgg4oBgorBgEEAYI3AwMBMYIOGDCCDhQGCSqGSIb3DQEHAqCCDgUwgg4B # AgEDMQ0wCwYJYIZIAWUDBAIBMIH/BgsqhkiG9w0BCRABBKCB7wSB7DCB6QIBAQYL # YIZIAYb4RQEHFwMwITAJBgUrDgMCGgUABBQxGASFalxI+VWDHJNvgB4WzOE3jQIV # APgqvBCcWXGiLkinDGW+Q62VwJNrGA8yMDE3MDYwMjE3MTIyOVowAwIBHqCBhqSB # gzCBgDELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9u # MR8wHQYDVQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMTEwLwYDVQQDEyhTeW1h # bnRlYyBTSEEyNTYgVGltZVN0YW1waW5nIFNpZ25lciAtIEcyoIIKizCCBTgwggQg # oAMCAQICEHsFsdRJaFFE98mJ0pwZnRIwDQYJKoZIhvcNAQELBQAwgb0xCzAJBgNV # BAYTAlVTMRcwFQYDVQQKEw5WZXJpU2lnbiwgSW5jLjEfMB0GA1UECxMWVmVyaVNp # Z24gVHJ1c3QgTmV0d29yazE6MDgGA1UECxMxKGMpIDIwMDggVmVyaVNpZ24sIElu # Yy4gLSBGb3IgYXV0aG9yaXplZCB1c2Ugb25seTE4MDYGA1UEAxMvVmVyaVNpZ24g # VW5pdmVyc2FsIFJvb3QgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkwHhcNMTYwMTEy # MDAwMDAwWhcNMzEwMTExMjM1OTU5WjB3MQswCQYDVQQGEwJVUzEdMBsGA1UEChMU # U3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFudGVjIFRydXN0IE5l # dHdvcmsxKDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1lU3RhbXBpbmcgQ0Ew # ggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC7WZ1ZVU+djHJdGoGi61Xz # sAGtPHGsMo8Fa4aaJwAyl2pNyWQUSym7wtkpuS7sY7Phzz8LVpD4Yht+66YH4t5/ # Xm1AONSRBudBfHkcy8utG7/YlZHz8O5s+K2WOS5/wSe4eDnFhKXt7a+Hjs6Nx23q # 0pi1Oh8eOZ3D9Jqo9IThxNF8ccYGKbQ/5IMNJsN7CD5N+Qq3M0n/yjvU9bKbS+GI # mRr1wOkzFNbfx4Dbke7+vJJXcnf0zajM/gn1kze+lYhqxdz0sUvUzugJkV+1hHk1 # inisGTKPI8EyQRtZDqk+scz51ivvt9jk1R1tETqS9pPJnONI7rtTDtQ2l4Z4xaE3 # AgMBAAGjggF3MIIBczAOBgNVHQ8BAf8EBAMCAQYwEgYDVR0TAQH/BAgwBgEB/wIB # ADBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcDMEwwIwYIKwYBBQUHAgEWF2h0dHBz # Oi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkaF2h0dHBzOi8vZC5zeW1j # Yi5jb20vcnBhMC4GCCsGAQUFBwEBBCIwIDAeBggrBgEFBQcwAYYSaHR0cDovL3Mu # c3ltY2QuY29tMDYGA1UdHwQvMC0wK6ApoCeGJWh0dHA6Ly9zLnN5bWNiLmNvbS91 # bml2ZXJzYWwtcm9vdC5jcmwwEwYDVR0lBAwwCgYIKwYBBQUHAwgwKAYDVR0RBCEw # H6QdMBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTMwHQYDVR0OBBYEFK9j1sqj # ToVy4Ke8QfMpojh/gHViMB8GA1UdIwQYMBaAFLZ3+mlIR59TEtXC6gcydgfRlwcZ # MA0GCSqGSIb3DQEBCwUAA4IBAQB16rAt1TQZXDJF/g7h1E+meMFv1+rd3E/zociB # iPenjxXmQCmt5l30otlWZIRxMCrdHmEXZiBWBpgZjV1x8viXvAn9HJFHyeLojQP7 # zJAv1gpsTjPs1rSTyEyQY0g5QCHE3dZuiZg8tZiX6KkGtwnJj1NXQZAv4R5NTtzK # EHhsQm7wtsX4YVxS9U72a433Snq+8839A9fZ9gOoD+NT9wp17MZ1LqpmhQSZt/gG # V+HGDvbor9rsmxgfqrnjOgC/zoqUywHbnsc4uw9Sq9HjlANgCk2g/idtFDL8P5dA # 4b+ZidvkORS92uTTw+orWrOVWFUEfcea7CMDjYUq0v+uqWGBMIIFSzCCBDOgAwIB # AgIQVFjyqtdB1kS8hKl7oJZS5jANBgkqhkiG9w0BAQsFADB3MQswCQYDVQQGEwJV # UzEdMBsGA1UEChMUU3ltYW50ZWMgQ29ycG9yYXRpb24xHzAdBgNVBAsTFlN5bWFu # dGVjIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMTH1N5bWFudGVjIFNIQTI1NiBUaW1l # U3RhbXBpbmcgQ0EwHhcNMTcwMTAyMDAwMDAwWhcNMjgwNDAxMjM1OTU5WjCBgDEL # MAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFudGVjIENvcnBvcmF0aW9uMR8wHQYD # VQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3JrMTEwLwYDVQQDEyhTeW1hbnRlYyBT # SEEyNTYgVGltZVN0YW1waW5nIFNpZ25lciAtIEcyMIIBIjANBgkqhkiG9w0BAQEF # AAOCAQ8AMIIBCgKCAQEAmfP82AQJA4b511ymk8BCfOp8Y89dAOKO88CQ348p9Rjq # lLeS5dewoHOB6OkKm0p8Af+dj6Q5pw7qRfQiDDpw7TlFi+TFG1zwRWhGJAVjdpsc # /J5sKrFW5Yp/UnGu8jXVRiMGHM9ILR20zbjZdiOOHP8+v7sGXGkHpmUO+F6ufS7t # Ta4178nXAEL9KJUOn11yQgm8w9pE0u3MR4Tk/MotrFi+rveu2UQNCLfCd9YaQ3DR # bgPeUpLEEAhx2boiVfIfvO2bnTviXh1Mg/+XD3sL51WDTtIN677X7K5uR7mf36XW # UbwEVe3/J3BMye0qSxPhsblMD8kB7lVlX2kCeGbLPwIDAQABo4IBxzCCAcMwDAYD # VR0TAQH/BAIwADBmBgNVHSAEXzBdMFsGC2CGSAGG+EUBBxcDMEwwIwYIKwYBBQUH # AgEWF2h0dHBzOi8vZC5zeW1jYi5jb20vY3BzMCUGCCsGAQUFBwICMBkaF2h0dHBz # Oi8vZC5zeW1jYi5jb20vcnBhMEAGA1UdHwQ5MDcwNaAzoDGGL2h0dHA6Ly90cy1j # cmwud3Muc3ltYW50ZWMuY29tL3NoYTI1Ni10c3MtY2EuY3JsMBYGA1UdJQEB/wQM # MAoGCCsGAQUFBwMIMA4GA1UdDwEB/wQEAwIHgDB3BggrBgEFBQcBAQRrMGkwKgYI # KwYBBQUHMAGGHmh0dHA6Ly90cy1vY3NwLndzLnN5bWFudGVjLmNvbTA7BggrBgEF # BQcwAoYvaHR0cDovL3RzLWFpYS53cy5zeW1hbnRlYy5jb20vc2hhMjU2LXRzcy1j # YS5jZXIwKAYDVR0RBCEwH6QdMBsxGTAXBgNVBAMTEFRpbWVTdGFtcC0yMDQ4LTUw # HQYDVR0OBBYEFAm1wf6WcpcpQ5rJ4AK6rvj9L7r2MB8GA1UdIwQYMBaAFK9j1sqj # ToVy4Ke8QfMpojh/gHViMA0GCSqGSIb3DQEBCwUAA4IBAQAXswqI6VxaXiBrOwoV # smzFqYoyh9Ox9BxTroW+P5v/17y3lIW0x1J+lOi97WGy1KeZ5MPJk8E1PQvoaApd # Vpi9sSI70UR617/wbVEyitUj3zgBN/biUyt6KxGPt01sejMDG3xrCZQXu+TbWNQh # E2Xn7NElyix1mpx//Mm7KmirxH20z6PJbKfZxACciQp3kfRNovsxO4Zu9uYfUAOG # m7/LQqvmdptyWhEBisbvpW+V592uuuYiZfAYWRsRyc2At9iXRx9CCPiscR+wRlOz # 1LLVo6tQdUgSF4Ktz+BBTzJ+zZUcv5GKCD2kp2cClt8kTKXQQcCCYKOKFzJL07zP # pLSMMYICWjCCAlYCAQEwgYswdzELMAkGA1UEBhMCVVMxHTAbBgNVBAoTFFN5bWFu # dGVjIENvcnBvcmF0aW9uMR8wHQYDVQQLExZTeW1hbnRlYyBUcnVzdCBOZXR3b3Jr # MSgwJgYDVQQDEx9TeW1hbnRlYyBTSEEyNTYgVGltZVN0YW1waW5nIENBAhBUWPKq # 10HWRLyEqXugllLmMAsGCWCGSAFlAwQCAaCBpDAaBgkqhkiG9w0BCQMxDQYLKoZI # hvcNAQkQAQQwHAYJKoZIhvcNAQkFMQ8XDTE3MDYwMjE3MTIyOVowLwYJKoZIhvcN # AQkEMSIEIOw2a6U50/47tGXS4vTeEw645pE3ZGClFmSZdIAZBwjpMDcGCyqGSIb3 # DQEJEAIvMSgwJjAkMCIEIM96wXrQR+zV/cNoIgMbEtTvB4tvK0xea6Qfj/LPS61n # MAsGCSqGSIb3DQEBAQSCAQB6HE9H+Hy0EB+bAyTu3NlzLqTMMpcpBSroC+ntHCDh # uBTmbn8qPjSqQRRTFLXvHH5kuVzUseHX2LOhADDOze29Nh2H8ibzRnFap3aGOy6n # nyb1vcumA7OT8GdXCJhEXo2uBBOvAA4qozxiv40tGb9VR1jtjO3WckhxOUg3KXnY # CVx/4HD4+yutxhLQ/Z7L2Q4zDxVjArjoW0vFX1sr6eNfWEQ776x9zym/7hi3rzAG # vvn5yqtAMBmv1yIssa+YAFHQCfRWTq7CZmpifXJQweH8AXkPycBSloUpqklpNPUA # ydgpD7Wy2KWu8OrLCehNdotebYawEkpYo2AnyDM+l9D3 # SIG # End signature block |