web-dev-qa-db-fra.com

Comment spécifier un ID utilisateur et un mot de passe pour Visual Studio Code avec un proxy d'authentification?

Comment spécifier un ID utilisateur et un mot de passe pour Visual Studio Code avec un proxy d'authentification?

J'ai vu le Proxy Server Support sur le site principal du code VS, mais cela ne mentionne que deux paramètres ...

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

J'ai réglé ceux-ci, mais toujours pas de chance, par exemple Je n'arrive pas à installer des extensions ... je ne peux même pas en obtenir la liste 

Je suppose que c'est notre proxy, car il a besoin d'un identifiant et d'un mot de passe :-( 

Alors, comment pouvez-vous définir ces valeurs?

14
SteveC

Définissez les informations d'identification dans l'URL du proxy:

http://username:[email protected]:5187/
25
Oscar

Si vous ne souhaitez pas stocker vos informations d'identification dans le fichier de paramètres, vous pouvez utiliser Fiddler pour créer un proxy pour l'appel du proxy. De plus, je pense que ce qui précède ne fonctionne que pour les serveurs proxy utilisant une authentification de base. Les éléments suivants devraient fonctionner pour NTLM.

VSCode Ouvrir le fichier de paramètres: 

% APPDATA%\Code\User\settings.json

ajoutez ce qui suit:

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

Fiddler Confirmez les réglages du fiddler:

 enter image description here  enter image description here

Fiddler Assurez-vous que Fiddler est configuré pour s'authentifier automatiquement:

 enter image description here

VSCode Les extensions devraient maintenant être en ligne:

 enter image description here


Mettre à jour

Cela n’est plus nécessaire depuis l’implémentation de PR # 22369 qui a été implémentée dans la version 1.15 Authentification serveur proxy .

Dans mon cas, il me fallait encore ajouter:

"http.proxyStrictSSL": false
20
David Martin

Ma réponse préférée ici est la suggestion de David Martin d'utiliser Fiddler. Mais dans le cas où ce n’est pas quelque chose que vous souhaitiez entreprendre, voici comment définir vos informations d’identité pour le proxy.

Pour spécifier DOMAIN + nom d'utilisateur + mot de passe: (Cela ne fonctionnera probablement pas avec une barre oblique, utilisez donc% 5C à la place de la barre oblique, comme indiqué ci-dessous)

// 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:password@proxy_name_or_ip:port",
"https.proxy": "http://DOMAIN%5Cusername:password@proxy_name_or_ip:port",

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

Pour spécifier juste nom d'utilisateur + mot de passe:

// The proxy setting to use. If not set will be taken from the http_proxy and https_proxy environment variables
"http.proxy": "http://username:password@proxy_name_or_ip:port",
"https.proxy": "http://username:password@proxy_name_or_ip:port",

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

Veuillez vous référer à cet article . https://taeguk.co.uk/blog/working-in-visual-studio-behind-the-firewall/

Supposons que mon identifiant NTLM est DOMAIN\User Name et mon mot de passe P@ssword!Le format des informations d'identification doit être DOMAIN\User Name: P @ ssword !, mais vous devez également encoder l'URL et le mot de passe. . Une simple URL en ligne codée peut traduire votre nom d'utilisateur et votre mot de passe en: DOMAIN% 5CUser% 20Name et P% 40ssword! . Assemblez toutes ces informations en une seule chaîne comme suit: http: // DOMAIN% 5User% 20Name: P% 40ssword! @ Proxy-cluster.fqdn.local: 8881 Ajoutez ensuite ceci dans vos paramètres utilisateur dans Fichier, Préférences contre la valeur "http.proxy": // Placez votre paramètres de ce fichier pour écraser les paramètres par défaut { "http.proxy": " http: // DOMAIN% 5CUser% 20Name: P% 40ssword! @ proxy-cluster.fqdn.local: 8881 " }.

4
Kiki.J.Hu

Le vénérable CNTLM pourrait vous aider. Vous lui donnez vos informations d'identification, vous lui parlez du proxy en amont, vous l'exécutez sur votre ordinateur local, puis vous pointez VS vers le proxy à l'adresse http: // localhost: 3128 .

http://cntlm.sourceforge.net/

C'est une solution pratique pour toute application qui ne prend pas en charge les mandataires authentifiés.

2
batwad

"http.proxy": " http: // DOMAIN // USER: [email protected]: 8080 " . N'oubliez pas d'ajouter le port.