L-indirizz tal-proxy jgħid lil Emacs fejn għandu jikkonnettja. Id-dħul tiegħu huwa parti oħra mill-konversazzjoni. Għal talba HTTP ordinarja, il-librerija tal-URL ta' Emacs tista' twieġeb sfida ta' awtentikazzjoni tal-proxy, tikseb kredenzjali minn auth-source jew tistaqsihom b'mod interattiv, u terġa' tuża l-kredenzjali miżmuma fis-sessjoni.

Id-dettalji hawn taħt isegwu Emacs 31.1. Huma jikkonċernaw operazzjonijiet li jużaw il-librerija tal-URL; downloader estern imnedi minn pakkett Emacs għandu l-mogħdija tal-awtentikazzjoni tiegħu stess.

Issettja l-mogħdija, imbagħad ħalli lill-HTTP jitlob id-dħul

Punt ta' tmiem fiss tal-proxy jista' jintgħażel bl-għażla dokumentata:

(setq url-proxy-services
      '(("http" . "proxy.example:8080")
        ("https" . "proxy.example:8080")))

Issostitwixxi l-placeholder bil-punt ta' tmiem ipprovdut. Il-muftieħ jiddeskrivu l-iskemi tal-URL tad-destinazzjoni. Iż-żieda tad-dħul HTTPS tagħżel mogħdija għad-destinazzjonijiet HTTPS; hija stess ma tipprovdix kredenzjali.

Matul talba HTTP ordinarja, proxy jista' jwieġeb b'407 Proxy Authentication Required u sfida Proxy-Authenticate. Il-librerija tal-URL tagħżel skema ta' awtentikazzjoni appoġġata u tikseb kredenzjali għall-punt ta' tmiem tal-proxy. Imbagħad terġa' tipprova b'Proxy-Authorization.

Għall-awtentikazzjoni Basic, talba interattiva tista' titlob isem tal-utent u password meta ma jkunux disponibbli kredenzjali adatti. Talba mmarkata bħala mhux interattiva ma tistax tiddependi fuq dawk it-talbiet. Id-dħul fil-proxy huwa wkoll separat mid-dħul fis-sit web tad-destinazzjoni: l-isfida 401 ta' sit web issegwi mogħdija differenti.

Qiegħed kredenzjali persistenti f'auth-source

Jekk auth-source diġà jaqra fajl ta' kredenzjali kriptat bħal ~/.authinfo.gpg, dħul Basic għal dan l-eżempju għandu din il-forma:

machine proxy.example port http login YOUR_LOGIN password YOUR_PASSWORD

Uża l-kont u s-sigriet reali tiegħek, u kun żgur li l-fajl jinsab fost il-auth-sources konfigurati tiegħek. Il-linja turi oqsma li jaqblu; mhijiex struzzjoni biex tqiegħed password fil-fajl tal-inizjalizzazzjoni Lisp tiegħek.

Żewġ dettalji huma importanti fl-implimentazzjoni Basic ta' Emacs 31.1. Hija tfittex l-isem tal-host tal-proxy mingħajr il-port TCP numeriku, u tgħaddi l-iskema tal-URL tal-proxy bħala l-valur tal-port ta' auth-source. Għal dan il-proxy HTTP, dak il-valur huwa http, għalkemm il-konnessjoni TCP tuża l-port 8080.

Din it-tfittxija ma tinkludix ir-realm tal-isfida jew il-port numeriku tal-proxy. Tistenniex li tagħżel passwords Basic differenti għal diversi realms jew ports tal-proxy fuq l-istess isem tal-host. Digest juża tfittxija differenti tal-host, għalhekk l-eżempju hawn fuq huwa speċifikament għal Basic.

Il-librerija tal-URL iżżomm ukoll il-cache tal-awtentikazzjoni tagħha stess. Id-dħul Basic tagħha jiddistingwi l-punti ta' tmiem tal-proxy u juża qbil ta' realm jew direttorju fi ħdan punt ta' tmiem; dak il-cache huwa separat mit-tfittxija f'auth-source. It-tip ta' password fi promt jista' jimla l-cache tas-sessjoni mingħajr ma jiffranka dħul ġdid fil-fajl tal-kredenzjali persistenti tiegħek.

HTTPS għandu pass ta' awtentikazzjoni aktar kmieni

Għal destinazzjoni HTTPS permezz ta' proxy HTTP, Emacs l-ewwel jibgħat CONNECT. L-awtentikazzjoni tista' għalhekk tkun meħtieġa qabel ma jasal għall-konnessjoni kriptata mas-sit web.

F'Emacs 31.1, il-builder tat-talba CONNECT jiċċekkja awtentikazzjoni diġà disponibbli permezz tal-mekkaniżmu tal-awtentikazzjoni tiegħu, inklużi kredenzjali Basic fil-cache. Il-mogħdija Basic tiegħu ma titlobx u ma ġġibx dħul ġdid minn auth-source f'dak il-punt. Tweġiba CONNECT li mhijiex 200 lanqas ma tidħol fil-handler ordinarju tal-isfida HTTP 407 deskritt hawn fuq.

Konsegwentement, dħul f'auth-source li jista' jwieġeb sfida HTTP Basic normali ma jiggarantixxix li l-ewwel talba HTTPS ta' sessjoni ġdida se tiġi awtentikata b'suċċess. Sessjoni b'kredenzjali xierqa fil-cache għandha stat tal-bidu differenti. L-editjar ripetut tal-istess dħul tal-password ma jistax waħdu jneħħi din id-differenza bejn iż-żewġ mogħdijiet.

Jekk operazzjoni HTTPS tieqaf fil-proxy, stabbilixxi jekk CONNECT irċeviex 407 u jekk qed tużax l-imġieba ta' dan ir-rilaxx. Ikkonferma wkoll l-iskema tal-awtentikazzjoni offruta mill-proxy. Dħul ta' kredenzjali Basic mhuwiex adapter universali għal kull sistema ta' awtentikazzjoni tal-intrapriża.

Żomm il-konfigurazzjoni durabbli fl-għażla pubblika tal-proxy u fil-backend tal-kredenzjali li għażilt. Il-maħżen Basic intern tal-librerija tal-URL huwa utli biex tifhem din l-imġieba, iżda li timla dak l-istruttura tad-data privata bl-idejn jorbot is-setup mad-dettalji tal-implimentazzjoni.

Artikli relatati