Актуализация ветки Dev #2

Merged
Royce59 merged 43 commits from main into dev 2026-02-18 17:08:04 +00:00
Showing only changes of commit 0ac5ecee8a - Show all commits

View File

@@ -160,14 +160,15 @@ function Upload-ToSFTP {
[string]$WinSCPExe [string]$WinSCPExe
) )
# Password is already a plain string, use it directly # If password came URL-encoded (e.g., %23 for #), decode once
$plainPassword = $Pass if ($Pass -match '%[0-9A-Fa-f]{2}') {
$Pass = [System.Net.WebUtility]::UrlDecode($Pass)
}
# Escape special characters in password that could break URL or WinSCP syntax # Escape special characters in password that could break URL or WinSCP syntax
# Replace @ with %40, : with %3A, # with %23, $ with %24, & with %26 $escapedPassword = $Pass
$escapedPassword = $plainPassword
$escapedPassword = $escapedPassword -replace '@', '%40' $escapedPassword = $escapedPassword -replace '@', '%40'
$escapedPassword = $escapedPassword -replace ':', '%3A' $escapedPassword = $escapedPassword -replace ':', '%3A'
$escapedPassword = $escapedPassword -replace '#', '%23' $escapedPassword = $escapedPassword -replace '#', '%23'
$escapedPassword = $escapedPassword -replace '\$', '%24' $escapedPassword = $escapedPassword -replace '\$', '%24'
$escapedPassword = $escapedPassword -replace '`', '%60' $escapedPassword = $escapedPassword -replace '`', '%60'