Diagnosticér et NTLM-proxylogin i curl
Når en NTLM-proxy afviser login, skal du kontrollere curl-buildens understøttelse, proxyens godkendelsesudfordring og forbindelsens kontinuitet.
NTLM-proxygodkendelse kræver et handshake, ikke blot at et brugernavn vedhæftes én gang. Før du ændrer en kontoadgangskode, skal du bekræfte, at proxyen faktisk tilbyder NTLM, og at curl-programmet understøtter det.
curl --version
Undersøg funktionslisten fra den programfil, der udfører din anmodning. En anden curl-installation, et containerimage eller et operativsystembuild kan have anden godkendelsesunderstøttelse.
Vælg en metode specifikt til proxyen
curl --proxy http://proxy.example:3128 --proxy-ntlm --proxy-user 'EXAMPLE\alice' --noproxy '' --connect-timeout 5 --max-time 20 https://example.com/
Slutpunkt, domæne og brugernavn er eksempler. Brug det format, din administrator oplyser. Uden adgangskode i argumentet kan curl spørge efter den i stedet for at efterlade hemmeligheden i den viste kommando.
En indledende godkendelsesudfordring kan være en del af forhandlingen. Skeln mellem det og afvisning af et færdigt handshake. Brug ikke en NTLM-indstilling til oprindelsesserveren til at besvare en proxyudfordring.
Medtag forbindelsesadfærden i diagnosen
NTLM har forbindelsesbundet tilstand. Handshaket skal følge den forventede forbindelsesvej; gentagen udskiftning af forbindelser mellem dets trin kan forhindre afslutning.
I en applikation med libcurl skal biblioteket styre godkendelse og genbrug af forbindelser. Opret ikke en generisk pulje, der behandler forbindelser godkendt til forskellige identiteter som udskiftelige. Ved flere hop eller en mellemliggende tjeneste skal du kontrollere, om den bevarer den nødvendige forbindelsesstruktur.
Hvis understøttelse og metodevalg er korrekte, skal du undersøge kontoformat, domænepolitik og serverens godkendelseslogge med følsomme data fjernet. En timeout før nogen udfordring er stadig et tilgængelighedsproblem, ikke bevis på en forkert NTLM-adgangskode.
Detaljerede spor kan indeholde godkendelsestokens og interne navne. Brug dem lokalt og fjern følsomme oplysninger før deling; en offentlig fejlrapport behøver ikke en rå tokenudveksling.