urllib 経由でデータを取得中にローカル発行者証明書を取得できません
Python の urllib.request パッケージを使用してデータを取得しようとすると、次のような問題が発生する可能性があります。次のエラー:
certificate verify failed: unable to get local issuer certificate (_ssl.c:1045)
この問題は、Web サイトの SSL 証明書の検証に問題があることを示しているため、HTTPS URL を使用するときに発生する可能性があります。
エラーを解決するには、 「Install Certificates.command」ユーティリティ。SSL 証明書の信頼チェーンの確立に役立ちます。このプロセス中に何が起こるかは次のとおりです:
-
トラスト チェーンの確立: HTTPS Web サイトに接続するとき、ブラウザまたは Python プログラムは Web サイトの SSL 証明書をチェックして、その信頼性を確認します。証明書は、Web サイトの ID の検証を担当する信頼できるサードパーティ機関である認証局 (CA) によって発行されます。
-
ローカル証明書ストア: システムのデフォルトの証明書ストアには、さまざまな CA からの信頼されたルート証明書のコレクション。 Web サイトの証明書を検証するとき、システムはローカル ストアにある発行 CA のルート証明書をチェックします。
-
ローカル発行者証明書がありません: 場合によっては、発行 CA のルート証明書が失われている可能性があります。ローカルストアにはインストールされません。これにより、検証プロセスが失敗し、発生していたエラーが発生する可能性があります。
-
Install Certificates.command: 提供されたコマンドを実行すると、不足している証明書をオペレーティング システムのからインストールできます。デフォルトのソース。これにより、アクセスしようとしている Web サイトと同様の Web サイトの SSL 証明書を検証するために必要な信頼されたルート証明書がシステムに確実に存在します。
セキュリティと証明書についての理解を深めるには、次のリソース:
- [SSL/TLS による HTTP および HTTPS 暗号化](https://www.internetsociety.org/resources/deploy360/security/http-https-encryption-ssl-tls/)
- [初心者のための TLS/SSL 証明書](https://www.globalsign.com/en/information-center/certificate-guides/ssl-certificates-in-5- minutes)
- [認証局 (CA)](https://www.digicert.com/learn/certificate-authority/)
以上がurllib.request の使用中に「ローカル発行者の証明書を取得できません」というエラーが発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。