minodisk / bigquery-runner

An extension to query BigQuery directly and view the results in VSCode.
https://marketplace.visualstudio.com/items?itemName=minodisk.bigquery-runner
Apache License 2.0
44 stars 8 forks source link

BigQuery Runner: Login action without effect #39

Closed jubebo closed 1 year ago

jubebo commented 1 year ago

Hi there!

Unfortunately the default authentification via the "BigQuery Runner: Login" action does not work for me. When I execute this command the screen stays blank. I cannot tell if any command was executed in the background.

Current setup

Please let me know if you have any idea what could have possibly gone wrong or how I can debug the issue.

Best regards, Julian

minodisk commented 1 year ago

See the log.

  1. Run Output: Focus on Output View with Command Palette in VSCode
  2. Select BigQuery Runner

My case:

[Gcloud] stderr: Your browser has been opened to visit:

    https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=XXXXX

[Gcloud] stderr: 
Credentials saved to file: [/Users/XXXXX/.config/gcloud/application_default_credentials.json]

[Gcloud] stderr: 
These credentials will be used by any library that requests Application Default Credentials (ADC).

[Gcloud] stderr: WARNING: 
Cannot add the project "XXXXX" to ADC as the quota project because the account in ADC does not have the "serviceusage.services.use" permission on this project. You might receive a "quota_exceeded" or "API not enabled" error. Run $ gcloud auth application-default set-quota-project to add a quota project.

[Gcloud] close: 0
jubebo commented 1 year ago

Thank you for the quick reply! When running "BigQuery Runner: Login" it says:

[tree] Error: Authentication: Login with an account: Could not load the default credentials.

I am not sure what is going wrong here :/

jubebo commented 1 year ago

When clicking the expand button (">") on my Google Cloud project there also appears another error - posted below. Can you tell me how I need to authenticate in order to satisfy the firewall restrictions?

Error shown:

Multiple errors occurred during the request. Please see the errors array for complete details.
1. Proxy authentication
required
2. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>

<head>
    <title>Firewall Authentication</title>
</head>

<body>
    <div class="oc">
        <div class="ic">
            <div class="msg">
                <h1>Firewall Authentication</h1>
                <p>You must authenticate to use this service.</p>
            </div>
        </div>
    </div>
</body>

</html>
jubebo commented 1 year ago

Also, I can confirm that I obtain the same output as you when running gcloud auth application-default login:

Your browser has been opened to visit:

    https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=XXXXXXXX

Credentials saved to file: [C:\Users\XXXXXXX\AppData\Roaming\gcloud\application_default_credentials.json]
Cannot add the project "XXXXXX" to ADC as the quota project because the account in ADC does not have the "serviceusage.services.use" permission on this project. You might receive a "quota_exceeded" or "API not enabled" error. Run $ gcloud auth application-default set-quota-project to add a quota project.
jubebo commented 1 year ago

Hi all, I was now able to make the authentification work. As shown in the error log above the connection did not work due to a missing proxy setup.

My Google Cloud CLI had the proxy settings set via gcloud config set proxy/address, gcloud config set proxy/port and gcloud config set proxy/type and connection via the command line interface was possible. But it appears that VS Code does not pick these settings up when executing commands from BigQuery Runner.

Therefore it was required to set the proxy for VS Code specifically by adjusting http.proxy settings in setting.json.

minodisk commented 10 months ago

@jubebo Thanks for doing the research and trying. I'll check if it is possible to pass proxy information to the big query client.