From e9f41a223b21eefc6decf3bc4d00f4a6919c0b45 Mon Sep 17 00:00:00 2001 From: Sijun Liu Date: Tue, 14 Nov 2023 12:19:44 -0800 Subject: [PATCH] fix: auto create self signed jwt cred --- google/oauth2/service_account.py | 12 +++++------- system_tests/secrets.tar.enc | Bin 10324 -> 10324 bytes tests/oauth2/test_service_account.py | 14 +++++++++----- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/google/oauth2/service_account.py b/google/oauth2/service_account.py index 803b13070..2b5e0d390 100644 --- a/google/oauth2/service_account.py +++ b/google/oauth2/service_account.py @@ -417,13 +417,11 @@ def _metric_header_for_usage(self): @_helpers.copy_docstring(credentials.Credentials) def refresh(self, request): - if ( - self._universe_domain != _DEFAULT_UNIVERSE_DOMAIN - and not self._jwt_credentials - ): - raise exceptions.RefreshError( - "self._jwt_credentials is missing for non-default universe domain" - ) + if self._always_use_jwt_access and not self._jwt_credentials: + # If self signed jwt should be used but jwt credential is not + # created, try to create one with scopes + self._create_self_signed_jwt(None) + if self._universe_domain != _DEFAULT_UNIVERSE_DOMAIN and self._subject: raise exceptions.RefreshError( "domain wide delegation is not supported for non-default universe domain" diff --git a/system_tests/secrets.tar.enc b/system_tests/secrets.tar.enc index 329b32dca897c4bb28be3aa2183a290d7d667717..966e9f8b2718d4c5576cceff88d79cfd088e2fd5 100644 GIT binary patch literal 10324 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 literal 10324 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 diff --git a/tests/oauth2/test_service_account.py b/tests/oauth2/test_service_account.py index b963b157c..f9e0c1186 100644 --- a/tests/oauth2/test_service_account.py +++ b/tests/oauth2/test_service_account.py @@ -557,12 +557,16 @@ def test_refresh_jwt_not_used_for_domain_wide_delegation( assert jwt_grant.called assert not self_signed_jwt_refresh.called - def test_refresh_non_gdu_missing_jwt_credentials(self): - credentials = self.make_credentials(universe_domain="foo") + def test_refresh_missing_jwt_credentials(self): + credentials = self.make_credentials() + credentials = credentials.with_scopes(["foo", "bar"]) + credentials = credentials.with_always_use_jwt_access(True) + assert not credentials._jwt_credentials - with pytest.raises(exceptions.RefreshError) as excinfo: - credentials.refresh(None) - assert excinfo.match("self._jwt_credentials is missing") + credentials.refresh(mock.Mock()) + + # jwt credentials should have been automatically created with scopes + assert credentials._jwt_credentials is not None def test_refresh_non_gdu_domain_wide_delegation_not_supported(self): credentials = self.make_credentials(universe_domain="foo")