diff --git a/google/google.go b/google/google.go index 0e5b53d..c4fe932 100644 --- a/google/google.go +++ b/google/google.go @@ -184,7 +184,7 @@ func (f *credentialsFile) tokenSource(ctx context.Context, params CredentialsPar } return cfg.TokenSource(ctx) case impersonatedServiceAccount: - if f.SourceCredentials == nil { + if f.ServiceAccountImpersonationURL != "" && f.SourceCredentials == nil { return nil, errors.New("missing 'source_credentials' field in credentials") }