It adres fan 'e proxy fertelt Emacs wêr't it ferbine moat. De ynlaach is in oar part fan it petear. Foar in gewoane HTTP-oanfraach kin de URL-bibleteek fan Emacs antwurdzje op in autentikaasje-útdaging fan 'e proxy, gegevens by auth-source helje of ynteraktyf freegje, en gegevens werbrûke dy't yn 'e sesje holden wurde.

De details hjirûnder folgje Emacs 31.1. Se geane oer bewurkingen mei de URL-bibleteek; in eksterne downloader dy't troch in Emacs-pakket start wurdt, hat syn eigen autentikaasjepaad.

Set de rûte, lit HTTP dan om 'e ynlaach freegje

In fêst proxy-einpunt kin mei de dokumintearre opsje keazen wurde:

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

Ferfang de plekhâlder troch it levere einpunt. De kaaien beskriuwe de URL-skema's fan 'e bestimming. It tafoegjen fan 'e HTTPS-ynstap kiest in rûte foar HTTPS-bestimmingen; it leveret sels gjin gegevens.

By in gewoane HTTP-oanfraach kin in proxy antwurdzje mei 407 Proxy Authentication Required en in Proxy-Authenticate-útdaging. De URL-bibleteek kiest in stipe autentikaasjeskema en hellet gegevens foar it proxy-einpunt. Dêrnei besiket it it op 'e nij mei Proxy-Authorization.

Foar Basic-autentikaasje kin in ynteraktive oanfraach om in brûkersnamme en wachtwurd freegje as geskikte gegevens net beskikber binne. In oanfraach dy't as net-ynteraktyf markearre is, kin net op dy fregen fertrouwe. De proxy-ynlaach is ek los fan 'e ynlaach fan 'e bestimmingswebside: de 401-útdaging fan in webside folget in oar paad.

Set duorjende gegevens yn auth-source

As auth-source al in fersifere gegevensbestân lêst lykas ~/.authinfo.gpg, hat in Basic-ynstap foar dit foarbyld de folgjende foarm:

machine proxy.example port http login YOUR_LOGIN password YOUR_PASSWORD

Brûk jo echte akkount en geheim, en soargje derfoar dat it bestân by jo konfigurearre auth-sources heart. De rigel yllustrearret oerienkommende fjilden; it is gjin opdracht om in wachtwurd yn jo Lisp-inisjalisaasjebestân te setten.

Twa details binne wichtich yn 'e Basic-ymplemintaasje fan Emacs 31.1. It siket de hostnamme fan 'e proxy sûnder de numerike TCP-poarte, en it jout it skema fan 'e proxy-URL troch as poartwearde fan auth-source. Foar dizze HTTP-proxy is dy wearde http, ek al brûkt de TCP-ferbining poarte 8080.

Dit sykjen omfettet net it realm fan 'e útdaging of de numerike proxy-poarte. Ferwachtsje net dat it ferskillende Basic-wachtwurden kiest foar ferskate realms of proxy-poarten op deselde hostnamme. Digest brûkt in oar hostsykjen, dus it foarbyld hjirboppe is spesifyk foar Basic.

De URL-bibleteek hâldt ek syn eigen autentikaasje-cache. De Basic-ynstappen ûnderskiede proxy-einpunten en brûke realm- of mapoerienkomst binnen in einpunt; dy cache is los fan it sykjen yn auth-source. In wachtwurd by in frege yntypje kin de sesje-cache folje sûnder in nije ynstap yn jo duorjende gegevensbestân te bewarjen.

HTTPS hat in eardere autentikaasjestap

Foar in HTTPS-bestimming fia in HTTP-proxy stjoert Emacs earst CONNECT. Autentikaasje kin dus nedich wêze foardat it de fersifere ferbining mei de webside berikt.

Yn Emacs 31.1 kontrolearret de bouwer fan CONNECT-oanfragen op autentikaasje dy't al beskikber is fia syn autentikaasjemasine, ynklusyf cachede Basic-gegevens. It Basic-paad freget en hellet op dat stuit gjin nije auth-source-ynstap. In CONNECT-antwurd dat net 200 is, komt ek net yn 'e gewoane HTTP 407-útdagingshandler dy't hjirboppe beskreaun is.

Sadwaande garandearret in auth-source-ynstap dy't in normale HTTP Basic-útdaging beantwurdzje kin, net dat de earste HTTPS-oanfraach fan in nije sesje mei súkses autentisearre wurdt. In sesje mei geskikte cachede gegevens hat in oare begjinstân. It hieltyd wer bewurkjen fan deselde wachtwurdynstap kin dit ferskil tusken de beide paden net op himsels fuortsmite.

As in HTTPS-bewurking by de proxy stilhâldt, stel dan fêst oft CONNECT 407 krige en oft jo it gedrach fan dizze útjefte brûke. Befêstigje ek it autentikaasjeskema dat de proxy oanbiedt. In Basic-gegevensynstap is gjin universele adapter foar elk bedriuwsautentikaasjesysteem.

Hâld de duorjende konfiguraasje yn 'e iepenbiere proxy-opsje en yn jo keazen gegevens-backend. De ynterne Basic-opslach fan 'e URL-bibleteek is nuttich om dit gedrach te begripen, mar it mei de hân folje fan dy privee datastruktuer soe de opset oan ymplemintaasjedetails bine.

Relatearre artikelen