Private/Set-TlsLevel.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
function Set-TlsLevel { [CmdletBinding( SupportsShouldProcess = $false )] [System.Diagnostics.CodeAnalysis.SuppressMessage('PSUseShouldProcessForStateChangingFunctions', '')] param ( [Parameter(Mandatory, ParameterSetName = 'Set')] [Switch]$Tls12, [Parameter(Mandatory, ParameterSetName = 'Revert')] [Switch]$Revert ) begin { switch ($PSCmdlet.ParameterSetName) { "Set" { $Script:OriginalTlsSettings = [Net.ServicePointManager]::SecurityProtocol [Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor [Net.SecurityProtocolType]::Tls12 } "Revert" { if ($Script:OriginalTlsSettings) { [Net.ServicePointManager]::SecurityProtocol = $Script:OriginalTlsSettings } } } } } |