Zachovejte kódované přihlašovací údaje proxy v dávkovém souboru
Zachovejte procenty kódovaná uživatelská jména a hesla proxy při přesunu příkazu Windows do souboru .bat.
Adresa URL proxy funguje, když je nakonfigurovaná přímo, ale ověřování selže poté, co se stejná hodnota přesune do dávkového souboru Windows. Zkontrolujte, zda analyzátor dávkového souboru nezměnil znaky procenta předtím, než klient HTTP obdržel adresu URL.
Existují dvě samostatné reprezentace. Kódování URL může reprezentovat zpětné lomítko jako %5C a otazník jako %3F. Doslovný znak procenta v příkazu dávkového souboru je třeba escapovat jako %%.
Pro ilustrativní účet domain\user se zástupným heslem pass? může soubor .bat obsahovat:
set "https_proxy=http://domain%%5Cuser:pass%%[email protected]:8080"
Proces spuštěný poté by měl obdržet adresu URL obsahující domain%5Cuser:pass%3F. Zdvojené znaky procenta patří zdroji dávkového souboru, nikoli adrese URL proxy uložené klientem.
Nekopírujte tento dávkový zápis do souboru .npmrc ani do pole proxy v aplikaci: tyto vstupy neprocházejí stejným krokem analýzy dávkového souboru. Stejně tak tento příklad není syntaxe PowerShellu. Jiný obal, například CALL nebo příkaz sestavený pro druhý shell, může zavést další průchod analýzy a vyžaduje vlastní kontrolu.
Uveďte přiřazení SET do uvozovek, jak je znázorněno, aby se náhodné mezery nebo metasymboly shellu nestaly součástí nezamýšleného příkazu. Samotné uvozovky expanzi procenta nezabrání.
Při kontrole výsledku porovnejte očekávané kódování s redigovanou reprezentací, místo abyste adresu URL s heslem tiskli do sdíleného protokolu. Oprava escapování shellu přihlašovací údaj zachová; nevybírá autentizační schéma, které klient už nepodporoval.