botocore.exceptions.SSLError: la validación SSL falló en Windows

Aug 24 2020

El siguiente código es para obtener las regiones.

import boto3
ec2 = boto3.client('ec2', 'region-name')
print(ec2.describe_regions())

Al ejecutar este código en mi máquina, recibo este error.

botocore.exceptions.SSLError: La validación SSL falló para https://ec2.region-name.amazonaws.com/ [SSL: CERTIFICATE_VERIFY_FAILED] la verificación del certificado falló: no se pudo obtener el certificado del emisor local (_ssl.c: 1108)

Estoy ejecutando este código en una máquina con Windows 10 con el código VS como editor. Busqué otras respuestas donde requerían instalar el Install Certificates.commandarchivo. Sin embargo, parece que solo se encuentra en macOS.

¿Alguien puede decirme también el motivo de este problema?

Además, la semana pasada recibió una notificación de AWS de que están actualizando todos sus puntos de enlace de AWS FIPS a TLS 1.2 y, por lo tanto, deben conectarse a los puntos de enlace de TLS versión 1.2 de FIPS. Revisé mi versión TLS aquí . Dice que tengo TLS versión 1.2. ¿Hay algo relacionado con esto? Porque antes de esta notificación, mi script se estaba ejecutando perfectamente.

Por favor, alguien diga el motivo de este error y su posible corrección. Además, corrígeme si mencioné algo incorrecto con mi comprensión.

Respuestas

2 abdullahkhawer Aug 24 2020 at 14:09

Esta pregunta ya ha sido respondida en Stack Overflow antes.

Pruebe las siguientes soluciones:

  • Restablecer las credenciales de AWS mediante AWS Configure
  • Problema debido a Fiddler
  • Restablecer variables de entorno relacionadas con el proxy HTTP / HTTPS
  • Reinstale y actualice la AWS CLI
  • Uso de la variable de entorno AWS_CA_BUNDLE
  • Mover el archivo PEM del certificado de CA a la carpeta derecha
  • Verificación del certificado de CA
  • Instalar el módulo certifi Python
  • Instalar el módulo Python pyopenssl
  • Adición de detalles de CA raíz de confianza
  • Agregar host de confianza
  • Arreglando la versión de las solicitudes y los módulos de Python urllib3
  • Arreglar el contenido y la ubicación del certificado de CA

Nota: Existe una solución relacionada con la desactivación de la verificación SSL, pero no se recomienda.