2016-06-09 30 views
8

Come specificare un ID utente e una password per Codice Visual Studio con un proxy di autenticazione?Come specificare un ID utente e una password per Codice Visual Studio con un proxy di autenticazione?

Ho visto il Proxy Server Support sul sito principale Codice VS, ma questo cita solo due impostazioni ...

"http.proxy": "http://10.203.0.1:5187/" 
"http.proxyStrictSSL": false 

ho impostato questi, ma ancora senza fortuna, per esempio Non riesco a installare le estensioni ... non si può anche ottenere una lista di loro

Ho il sospetto che il nostro proxy, come ha bisogno di un'user id e password :-(

Così come si può impostare questi valori ?

+2

La risposta seguente non funziona più. Invece hanno introdotto un nuovo parametro di configurazione chiamato "http.proxyAuthorization" ma questo non funziona. 'Rifiutato di impostare un'intestazione non sicura" Autorizzazione proxy "'. È già segnalato: https://github.com/Microsoft/vscode/issues/17502 – mono68

+0

Segnalato non significa fisso ... o addirittura riconosciuto. Sto ancora aspettando la correzione dopo più di 4 mesi. –

risposta

16

impostare le credenziali all'interno l'URL del proxy:

http://username:[email protected]:5187/ 
+0

Eccellente, ha funzionato a meraviglia ... ora perché non ce l'hanno nella documentazione :-( – SteveC

+0

@SteveC Suppongo perché questa è una procedura standard di autenticazione di accesso di base, chiamata url encoding, ma potresti renderli un suggerimento per includerlo nei documenti https://en.wikipedia.org/wiki/Basic_access_authentication – Oscar

+3

non funziona più –

18

Se non si desidera memorizzare le credenziali nel file di impostazioni, violinista possono essere utilizzate per delega la chiamata al proxy Inoltre, credo. quanto sopra funziona solo per i server proxy che utilizzano l'autenticazione di base, il seguente dovrebbe wo rk per NTLM.

VSCode Aprire Impostazioni File:

% appdata% \ codice \ User \ settings.json

aggiungere il seguente:

{ 
    "http.proxy": "http://127.0.0.1:8888", 
    "http.proxyStrictSSL": false 
} 

Fiddler Conferma Fiddler impostazioni:

enter image description here enter image description here

Fiddler Assicurare Fiddler set per autenticare automaticamente:

enter image description here

VSCode estensioni dovrebbero ora essere online:

enter image description here


Aggiornamento

Questo ora non è più necessario a seguito dell'attuazione di PR #22369 che è stato implementato nella versione 1.15 Proxy server authentication.

Nel mio caso ho ancora bisogno di aggiungere:

"http.proxyStrictSSL": false 
+1

Ho usato il violinista ma avevo bisogno di usare Personalizza regole ... OnBeginRequest "if (m_AutoAuth) {oSession [" X- AutoAuth "] =" dominio \\ nome utente: password ";}" – Coding101

+0

Sarebbe bello, se il codice vs fornisce un'impostazione per specificare un ca come npm, quindi non dobbiamo impostare strictssl su false. Vedere il problema su github [qui] (https://github.com/Microsoft/vscode/issues/9790?_pjax=%23js-repo-pjax-container) – martinoss

3

La mia risposta preferita qui è il suggerimento di David Martin di usare Fiddler.Ma nel caso in cui non è qualcosa che si vuole intraprendere, di seguito è come impostare le credenziali per il proxy.

Per specificare il dominio + nome utente + password: (Sarà probabilmente non funziona con una barra, in modo da utilizzare% 5C al posto della barra come illustrato di seguito)

// The proxy setting to use. If not set will be taken from the http_proxy and https_proxy environment variables 
"http.proxy": "http://DOMAIN%5Cusername:[email protected]_name_or_ip:port", 
"https.proxy": "http://DOMAIN%5Cusername:[email protected]_name_or_ip:port", 

// Whether the proxy server certificate should be verified against the list of supplied CAs. 
"http.proxyStrictSSL": false, 

Per specificare solo nome utente + password:

// The proxy setting to use. If not set will be taken from the http_proxy and https_proxy environment variables 
"http.proxy": "http://username:[email protected]_name_or_ip:port", 
"https.proxy": "http://username:[email protected]_name_or_ip:port", 

// Whether the proxy server certificate should be verified against the list of supplied CAs. 
"http.proxyStrictSSL": false, 
+0

Ho usato questo ma ancora non funziona. C'è altro? –

+0

Man,mi hai salvato! Ho usato "\\" in una stringa invece di "% 5C". Non appena ho sostituito le barre con "% 5C", tutto ha funzionato! Molte grazie! :) – JohnyL

2

Si prega di prendere riferimento a questo articolo.

Supponiamo che il mio login NTLM sia DOMINIO \ Nome utente e la mia password è P @ ssword! Il formato per le credenziali deve essere DOMINIO \ Nome utente: P @ ssword !, ma è necessario l'URL Codificare il nome utente e la password. Un semplice URL in linea codificato può tradurre il tuo nome utente e password in: DOMAIN% 5CUser% 20Name e P% 40ssword !. Inserisci tutte queste informazioni in una singola stringa in questo modo: http://DOMAIN%5CUser%20Name:P%[email protected]:8881 Quindi aggiungi questo nelle Impostazioni utente in File, Preferenze rispetto al valore "http.proxy": // Inserisci le tue impostazioni in questo file per sovrascrivere le impostazioni predefinite { "http.proxy": "http://DOMAIN%5CUser%20Name:P%[email protected]:8881" }

+0

Questo ha funzionato per me da dietro il firewall aziendale con VSCode 1.9.1. Il fattore di differenziazione è stato il suggerimento dell'URL Encode. Grazie a te @ Kiki.J.Hu. –

Problemi correlati