diff --git a/mongo/datadog_checks/mongo/config.py b/mongo/datadog_checks/mongo/config.py index d245796d3c01e..5c510da1449f9 100644 --- a/mongo/datadog_checks/mongo/config.py +++ b/mongo/datadog_checks/mongo/config.py @@ -1,3 +1,5 @@ +import certifi + from datadog_checks.base import ConfigurationError, is_affirmative from datadog_checks.base.utils.common import exclude_undefined_keys from datadog_checks.mongo.common import DEFAULT_TIMEOUT @@ -9,13 +11,20 @@ def __init__(self, instance, log): self.log = log # x.509 authentication + + cacert_cert_dir = instance.get('ssl_ca_certs') + if cacert_cert_dir is None and ( + is_affirmative(instance.get('options', {}).get("ssl")) or is_affirmative(instance.get('ssl')) + ): + cacert_cert_dir = certifi.where() + self.ssl_params = exclude_undefined_keys( { 'ssl': instance.get('ssl', None), 'ssl_keyfile': instance.get('ssl_keyfile', None), 'ssl_certfile': instance.get('ssl_certfile', None), 'ssl_cert_reqs': instance.get('ssl_cert_reqs', None), - 'ssl_ca_certs': instance.get('ssl_ca_certs', None), + 'ssl_ca_certs': cacert_cert_dir, } )