Захаваць закадаваныя ўліковыя даныя проксі ў batch-файле
Захоўвайце працэнтна закадаваныя імёны карыстальнікаў і паролі проксі пры пераносе каманды Windows у файл .bat.
URL проксі працуе, калі наладжаны напроста, але аўтэнтыфікацыя зрываецца пасля пераносу таго ж значэння ў batch-файл Windows. Праверце, ці не змяніў парсер batch знакі працэнта, перш чым HTTP-кліент атрымаў URL.
Ёсць два асобныя прадстаўленні. Кадаванне URL можа прадставіць зваротную касую рыску як %5C, а знак пытання як %3F. Літаральны знак працэнта ў камандзе batch-файла трэба экранаваць як %%.
Для прыкладнага ўліковага запісу domain\user з паролем-запаўняльнікам pass? файл .bat можа змяшчаць:
set "https_proxy=http://domain%%5Cuser:pass%%[email protected]:8080"
Працэс, запушчаны пасля гэтага, павінен атрымаць URL, які змяшчае domain%5Cuser:pass%3F. Падвоеныя знакі працэнта належаць крыніцы batch, а не URL проксі, які захоўвае кліент.
Не капіруйце гэтае напісанне batch у файл .npmrc або ў поле проксі праграмы: гэтыя ўваходы не праходзяць праз той жа этап аналізу batch. Гэтак жа гэты прыклад не з'яўляецца сінтаксісам PowerShell. Іншая абгортка, напрыклад CALL або каманда, пабудаваная для другой абалонкі, можа ўвесці яшчэ адзін праход аналізу і патрабуе ўласнага разгляду.
Бярыце прызначэнне SET у лапкі, як паказана, каб выпадковыя прабелы або метазнакі абалонкі не сталі часткай непажаданай каманды. Адны лапкі не прадухіляюць раскрыццё працэнтаў.
Правяраючы вынік, параўноўвайце чаканае кадаванне з адрэдагаваным прадстаўленнем, а не друкуйце URL з паролем у агульны журнал. Выпраўленне экранавання абалонкі захоўвае ўліковыя даныя; яно не выбірае схему аўтэнтыфікацыі, якую кліент не падтрымліваў.