Un collègue vous remet le certificat CA de l'organisation. Requests propose un paramètre nommé cert. Les noms semblent aller de pair, mais ils répondent à des questions différentes.

RéglageObjet
verifySélectionne le matériel de confiance utilisé pour vérifier le pair
certPrésente un certificat client, avec sa clé privée, lorsque l'authentification du client est requise

Pour une CA d'interception approuvée, une opération Requests peut sélectionner le bundle CA prévu :

response = requests.get(
    'https://example.com/',
    proxies=routes,
    verify='/path/to/approved-ca-bundle.pem',
    timeout=15,
)

Ici, routes est le mappage de proxy existant de l'application. Le chemin doit nommer le bundle de confiance lisible correct pour ce client. Ce n'est pas un certificat de site téléchargé et choisi simplement parce que la connexion a échoué.

La variable d'environnement REQUESTS_CA_BUNDLE est une autre source de confiance prise en charge. Vérifiez le chemin d'envoi réel si elle semble inefficace ; les flux de requêtes préparées et les réglages explicites peuvent modifier la façon dont la configuration d'environnement est fusionnée.

Vous ne devriez pas avoir besoin de la clé privée de la CA

Le certificat CA public est ce dont un client a besoin pour reconnaître un émetteur approuvé. Sa clé privée de signature est un secret puissant détenu par une autre partie. Elle ne doit pas être distribuée aux utilisateurs de l'application dans le cadre d'une réparation de routine de la confiance du proxy.

Un certificat client peut encore être exigé par une destination particulière ou par une autre relation TLS configurée séparément. C'est une exigence distincte, et non quelque chose qui se déduit de chaque erreur de vérification de certificat.

Lorsque l'erreur suivante apparaît, nommez l'opération : charger un fichier CA, vérifier un certificat de pair ou présenter une identité client. Déplacer un fichier entre verify et cert jusqu'à ce que le message change n'est pas un moyen fiable de choisir son rôle.

Articles similaires