Skip to content

Xarray tutorial with custom SSL cert? #251

Open
@rsignell

Description

@rsignell

I'm on a secure NATO system with a custom SSL cert and when I try to load some xarray tutorial data:

import xarray as xr
ds = xr.tutorial.open_dataset("air_temperature").isel(time=slice(0, 100))

I get back:

---------------------------------------------------------------------------
SSLCertVerificationError                  Traceback (most recent call last)
File ~/miniforge3/envs/pangeo/lib/python3.10/site-packages/urllib3/connectionpool.py:703, in HTTPConnectionPool.urlopen(self, method, url, body, headers, retries, redirect, assert_same_host, timeout, pool_timeout, release_conn, chunked, body_pos, **response_kw)
    702 # Make the request on the httplib connection object.
--> 703 httplib_response = self._make_request(
    704     conn,

With other packages I can set an environment variable to point to the custom .pem, like:

os.environ['AWS_CA_BUNDLE']='/home/shared/PA-RootCA-Cert-2023-Pub.pem'    # s3
os.environ['REQUESTS_CA_BUNDLE']='/home/shared/PA-RootCA-Cert-2023-Pub.pem'  # requests

but there doesn't seem to be such an environment variable for urllib3?

I see this info in the urlib3 docs about custom SSL, but I'm not sure how I could pass this custom context to the xr.tutorial.open_dataset command.

Does anyone know how to overcome this issue?

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions