Как обновить сертификат SSL в Python?

Я использую python 3.9.1 У меня есть несколько Django Admin Actions, которые создают и затем загружают некоторые PDF-файлы. При выполнении этих действий на моей локальной машине (Windows 10) я недавно начал получать следующее сообщение об ошибке: SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: certificate has expired (_ssl.c:1123)

Есть идеи, как я могу с этим справиться? Приложение Django прекрасно работает на сервере, проблема только на моем локальном хосте.

В моем случае я взаимодействовал с API устройств IoT (Интернета вещей) и имел сертификат LetsEncrypt, срок действия которого истек. Я загрузил новый сертификат LetsEncrypt по адресу: https://valid-isrgrootx1.letsencrypt.org/

Дополнительные пояснения:

Моя ошибка возникла на клиенте Windows Python, запрашивающем информацию API с веб-сервера IoT. Я определил, срок действия сертификата какого клиента истек, просмотрев даты существующих сертификатов в Windows:

  • Откройте Powershell от имени администратора, затем: Get-Childitem cert:\LocalMachine\root |format-list
  • .

Просроченный сертификат принадлежал LetsEncrypt. Дополнительная информация о просроченном сертификате: https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/.

В моем случае срок действия корневого сертификата LetsEncrypt истек в конце сентября и был заменен на более новый сертификат. Чтобы использовать новый сертификат, посетите любую веб-страницу, использующую этот сертификат с вашего неработающего клиента . В случае с LetsEncrypt, посетите демонстрационную страницу их сертификата по адресу: https://valid-isrgrootx1.letsencrypt.org/, и ваше хранилище сертификатов обновится автоматически.

Вернуться на верх