Behold kodede proxy-påloggingsdetaljer intakte i en batchfil
Bevar prosentkodede proxy-brukernavn og -passord når en Windows-kommando flyttes til en .bat-fil.
En proxy-URL fungerer når den konfigureres direkte, men autentiseringen mislykkes etter at samme verdi er flyttet til en Windows-batchfil. Sjekk om batch-parseren endret prosenttegnene før HTTP-klienten mottok URL-en.
Det finnes to separate representasjoner. URL-koding kan representere en omvendt skråstrek som %5C og et spørsmålstegn som %3F. Et bokstavelig prosenttegn i en batchfil-kommando må escapes som %%.
For en illustrerende konto domain\user med plassholderpassordet pass? kan en .bat-fil inneholde:
set "https_proxy=http://domain%%5Cuser:pass%%[email protected]:8080"
Prosessen som startes etterpå, bør motta en URL som inneholder domain%5Cuser:pass%3F. De doblede prosenttegnene tilhører batchkilden, ikke proxy-URL-en som klienten lagrer.
Ikke kopier den batch-stavingen til en .npmrc-fil eller et programs proxyfelt: disse inndataene går ikke gjennom det samme batch-parsingstrinnet. På samme måte er dette eksempelet ikke PowerShell-syntaks. En annen innpakning, som CALL eller en kommando bygget for et andre skall, kan introdusere en ny parsingsrunde og trenger sin egen gjennomgang.
Sett SET-tilordningen i anførselstegn som vist, slik at tilfeldige mellomrom eller skallmetategn ikke blir del av en utilsiktet kommando. Anførselstegn alene forhindrer ikke prosentutvidelse.
Når du kontrollerer resultatet, sammenlign den forventede kodingen med en redigert representasjon i stedet for å skrive ut URL-en med passordet til en delt logg. En retting av skall-escaping bevarer påloggingsdetaljene; den velger ikke en autentiseringsordning som klienten ikke allerede støttet.