def __init__(self, refresh_token=None): self._refresh_token = refresh_token or ( _TEST_CONFIG['auth_data']['user_account']['refresh_token']) self._account = _TEST_CONFIG['auth_data']['user_account']['account'] self._orig_account = None self._project = _TEST_CONFIG['property_overrides'].get('project', None) self._credentials = c_store.AcquireFromToken(self._refresh_token)
def ActivateCredentials(account, refresh_token): """Activates credentials for given account with given refresh token.""" creds = c_store.AcquireFromToken(refresh_token) c_store.ActivateCredentials(account, creds) return creds
def ActivateCredentials(account, refresh_token): """Activates credentials for given account with given refresh token.""" use_google_auth = ( not properties.VALUES.auth.disable_load_google_auth.GetBool()) creds = c_store.AcquireFromToken(refresh_token, use_google_auth=use_google_auth) c_store.ActivateCredentials(account, creds) return creds
def __enter__(self): self._orig_account = properties.VALUES.core.account.Get() self._orig_project = properties.VALUES.core.project.Get() self._orig_impersonate_service_account = ( properties.VALUES.auth.impersonate_service_account.Get()) user_creds = c_store.AcquireFromToken(self._refresh_token) c_store.ActivateCredentials(self._account, user_creds) if self._project_override: properties.VALUES.core.project.Set(self._project_override) properties.VALUES.auth.impersonate_service_account.Set( self._service_account_email) self._orig_impersonate_provider = c_store.IMPERSONATION_TOKEN_PROVIDER c_store.IMPERSONATION_TOKEN_PROVIDER = ( iamcred_util.ImpersonationAccessTokenProvider()) return self
def Run(self, args): """Run the authentication command.""" token = args.token or console_io.PromptResponse('Refresh token: ') if not token: raise c_exc.InvalidArgumentException('token', 'No value provided.') creds = c_store.AcquireFromToken(token) account = args.account c_store.Refresh(creds) c_store.Store(creds, account) properties.PersistProperty(properties.VALUES.core.account, account) project = args.project if project: properties.PersistProperty(properties.VALUES.core.project, project) return creds