intdash SDK for Pythonを使ってClientオブジェクトを生成する際、以下のようにSSLCertVerificationError
が発生することがあります。
Pythonコード例:
client = intdash.Client(url='https://<intdash-domain>', edge_token='<token>')
エラー例:
SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1125)MaxRetryError: HTTPSConnectionPool(host='<intdash-domain>', port=443): Max retries exceeded with url: /api/v1/version (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1125)')))
このエラーは、SSL/TLSサーバー証明書の検証に失敗していることを示しています。サーバー証明書として自己署名証明書が使用されていると、このエラーが発生します。
このような場合は、第三者により署名された証明書をサーバーに設置してください。詳細については、intdashサーバーの証明書についてを参照してください。
なお、Clientオブジェクト生成時にverify=False
を指定することで、証明書の検証をスキップすることも可能です。
client = intdash.Client(url='https://<intdash-domain>', edge_token='<token>', verify=False)
この場合、自己署名証明書が使用されていてもエラーにはなりませんが、自己署名証明書の使用にはセキュリティ上のリスクがあります。この点についても、intdashサーバーの証明書について を参照してください。