From 0d84877c98726be6417474816b38baac92b45ee7 Mon Sep 17 00:00:00 2001 From: Anna Date: Thu, 3 Jun 2021 01:55:36 -0500 Subject: [PATCH] fix(sdk): Add http status code check for token requests. Fixes #4312 (#5782) Signed-off-by: Anna Jung (VMware) --- sdk/python/kfp/_auth.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sdk/python/kfp/_auth.py b/sdk/python/kfp/_auth.py index 8cf0919b2a9..bf479f16a05 100644 --- a/sdk/python/kfp/_auth.py +++ b/sdk/python/kfp/_auth.py @@ -180,15 +180,19 @@ def get_auth_code(client_id): open_new_tab(auth_url) return input("If there's no browser window prompt, please direct to the URL above, then copy and paste the authorization code here: ") + def get_refresh_token_from_code(auth_code, client_id, client_secret): payload = {"code": auth_code, "client_id": client_id, "client_secret": client_secret, "redirect_uri": "urn:ietf:wg:oauth:2.0:oob", "grant_type": "authorization_code"} res = requests.post(OAUTH_TOKEN_URI, data=payload) - return (str(json.loads(res.text)[u"refresh_token"])) + res.raise_for_status() + return str(json.loads(res.text)[u"refresh_token"]) + def id_token_from_refresh_token(client_id, client_secret, refresh_token, audience): payload = {"client_id": client_id, "client_secret": client_secret, "refresh_token": refresh_token, "grant_type": "refresh_token", "audience": audience} res = requests.post(OAUTH_TOKEN_URI, data=payload) - return (str(json.loads(res.text)[u"id_token"])) + res.raise_for_status() + return str(json.loads(res.text)[u"id_token"])