Maison > développement back-end > Golang > Pourquoi ma requête HTTP Golang échoue-t-elle avec « x509 : certificat signé par une autorité inconnue » sous Windows XP ?

Pourquoi ma requête HTTP Golang échoue-t-elle avec « x509 : certificat signé par une autorité inconnue » sous Windows XP ?

Barbara Streisand
Libérer: 2024-11-11 20:03:03
original
295 Les gens l'ont consulté

Why Does My Golang HTTP Request Fail with

Erreur de validation du certificat dans Windows XP pour Golang HTTP x509

Problème :

Lors de l'exécution une application client utilisant Golang 1.9.2 sur Windows XP, les utilisateurs rencontrent l'erreur « x509 : certificat signé par une autorité inconnue » lors des requêtes HTTP GET et POST, même si le certificat est valide et signé par une autorité de confiance.

Contexte :

Cette erreur se produit lorsque le client ne parvient pas à vérifier la chaîne de certificats du serveur car les certificats intermédiaires nécessaires à la validation ne sont pas installés dans le magasin de certificats du système hôte.

Tentative de solution :

Pour résoudre le problème, l'utilisateur a implémenté le code suivant sur la base des conseils d'autres sources :

tr := &http.Transport{
    TLSClientConfig: &tls.Config{InsecureSkyVerify: true},
}
Copier après la connexion

Cependant, cette solution est incorrecte , car le nom du champ est "InsecureSkipVerify" au lieu de "InsecureSkyVerify".

Solution correcte :

L'implémentation correcte devrait être :

tr := &http.Transport{
    TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
}
Copier après la connexion

Avertissement :

Veuillez faire preuve de prudence lorsque vous utilisez « InsecureSkipVerify » car il désactive la validation du certificat du serveur et les vérifications du nom d'hôte. Cela peut exposer le client à des risques de sécurité, tels que des attaques de l'homme du milieu. Il est recommandé d'utiliser une vérification personnalisée ou "VerifyConnection" ou "VerifyPeerCertificate" pour une connexion sécurisée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal