== How to fix it in Python Standard Library === Code examples include::../../common/fix/code-rationale.adoc[] Certificate validation is not enabled by default when ``++_create_unverified_context++`` or ``++_create_stdlib_context++`` is used. It is recommended to use `create_default_context`, without explicitly setting `check_hostname` to `False`. + Doing so creates a secure context that validates both hostnames and certificates. ==== Noncompliant code example [source,python,diff-id=1,diff-type=noncompliant] ---- import ssl example = ssl._create_stdlib_context() # Noncompliant example = ssl._create_default_https_context() example.check_hostname = False # Noncompliant ---- ==== Compliant solution [source,python,diff-id=1,diff-type=compliant] ---- import ssl example = ssl.create_default_context() example = ssl._create_default_https_context() ---- === How does this work? include::../../common/fix/validation.adoc[]