2023-07-04 12:59:44 +02:00

7772 lines
205 KiB
PowerShell

#
# $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