Skip to content
This repository has been archived by the owner on Mar 13, 2022. It is now read-only.

Commit

Permalink
remove required idp-certificate-authority-data in kubeconfig for oidc…
Browse files Browse the repository at this point in the history
  • Loading branch information
mvle committed May 23, 2018
1 parent 5784a38 commit 897b48e
Showing 1 changed file with 19 additions and 14 deletions.
33 changes: 19 additions & 14 deletions config/kube_config.py
Original file line number Diff line number Diff line change
Expand Up @@ -255,22 +255,27 @@ def _load_oid_token(self):
return self.token

def _refresh_oidc(self, provider):
ca_cert = tempfile.NamedTemporaryFile(delete=True)
config = Configuration()

if PY3:
cert = base64.b64decode(
provider['config']['idp-certificate-authority-data']
).decode('utf-8')
else:
cert = base64.b64decode(
provider['config']['idp-certificate-authority-data'] + "=="
)
if 'idp-certificate-authority-data' in provider['config']:
ca_cert = tempfile.NamedTemporaryFile(delete=True)

with open(ca_cert.name, 'w') as fh:
fh.write(cert)
if PY3:
cert = base64.b64decode(
provider['config']['idp-certificate-authority-data']
).decode('utf-8')
else:
cert = base64.b64decode(
provider['config']['idp-certificate-authority-data'] + "=="
)

config = Configuration()
config.ssl_ca_cert = ca_cert.name
with open(ca_cert.name, 'w') as fh:
fh.write(cert)

config.ssl_ca_cert = ca_cert.name

else:
config.verify_ssl = False

client = ApiClient(configuration=config)

Expand Down Expand Up @@ -301,7 +306,7 @@ def _refresh_oidc(self, provider):
refresh_token=provider['config']['refresh-token'],
auth=(provider['config']['client-id'],
provider['config']['client-secret']),
verify=ca_cert.name
verify=config.ssl_ca_cert if config.verify_ssl else None
)
except oauthlib.oauth2.rfc6749.errors.InvalidClientIdError:
return
Expand Down

0 comments on commit 897b48e

Please sign in to comment.