当 oauth2.googleapis.com 被列入黑名单时,如何使用 Google Shell 或 Web 浏览器(对此不确定)?

How to use anything but Google Shell or Web browser when oauth2.googleapis.com is blacklisted (not sure about this)?

如果客户端应用程序试图与 oauth2.googleapis.com 通信,我无法连接到 Google 服务(这可能在我的公司网络中被阻止 - 我不知道如何测试它).


我在 Dbeaver 中使用 JDBC 驱动程序尝试了 BigQuery。有基本设置。

User-based 登录执行此操作: 它为 OAUTH 生成 link。我打开浏览器并使用正确的 google 帐户登录。然后我将生成的代码插入到 Dbeaver 中,我收到 AUTH 失败的消息。

Service-based 登录执行此操作: 它不希望我访问任何网页。 它只是告诉我:

[Simba][BigQueryJDBCDriver](100004) HttpTransport IO error : oauth2.googleapis.com.

我也试过用ODBC,这里可以填PROXY,但是没有成功。 当我查看 'Proxy Options' 时,代理端口总是被代理主机重写。奇怪。


但是! 当我在 GCLOUD CLI APP 中设置我的 HTTP 代理时,通信就可以进行了。我可以从中调用 BQ。

是不是说GCLOUD是通过HTTP Proxy和DBeaver或ODBC通信的呢?或者这是否意味着 GCLOUD 不需要 oauth2.googleapis.com 但 ODBC 和 JDBC 需要并且它被列入黑名单?我很困惑。

我们需要从内部环境迁移到 GCP。我们很乐意使用各种应用程序。我会要求加入白名单 oauth2.googleapis.com 但我不确定这是唯一的问题,因为 GCLOUD 应用程序没有任何缺陷。

我 not-experienced 与网络有关,所以我非常乐意更新/更正此问题或添加任何信息(如果需要)以帮助我理解此问题。谢谢

根据您的描述,您的公司网络正在使用代理访问互联网,这就是为什么在您的系统中配置代理设置时 gcloud 能够访问 BigQuery 服务的原因;通过 Cloud SDK Proxy settings 或 HTTP PROXY 环境变量。

您需要按照 Simba JDBC 驱动程序 documentation 中的描述在 JDBC 连接字符串中设置代理设置,例如:

jdbc:bigquery:DataSetId=MyDataSetId;ProjectId=MyProjectId;OAuthType=1;ProxyHost=MyProxyHost;ProxyPort=MyProxyPort;ProxyUID=MyProxyUsername;ProxyPWD=MyProxyPassword

此连接字符串将指示 Simba JDBC 驱动程序的代理设置。