BigQuery 客户端网址

Posted

技术标签:

【中文标题】BigQuery 客户端网址【英文标题】:BigQuery Client Url 【发布时间】:2021-05-19 21:32:35 【问题描述】:

我的服务器是一个封闭网络,我只想为 bigquery 客户端和 gsutil 创建一个白名单。

我已尝试添加以下网址

    https://cloud.google.com/bigquery
    https://console.cloud.google.com/

但事实证明 bigquery 需要更多 url 来进行身份验证等等。例如像下面的网址

https://accounts.google.com/o/oauth2/auth
https://www.googleapis.com/oauth2/v1/certs

有谁知道用于 bigquery-client 和 gsutil 的所有 url。不仅用于身份验证,还用于创建作业和从存储中获取数据

【问题讨论】:

【参考方案1】:

根据official documentation,您可以看到网址https://www.googleapis.com/auth/bigquery 是用于BigQuery 进行身份验证的网址:

#This is a Python example
appflow = flow.InstalledAppFlow.from_client_secrets_file(
    "client_secrets.json", scopes=["https://www.googleapis.com/auth/bigquery"]
)

但是,您需要将项目的API authorization 的 URL 列入白名单,例如:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
 "https://www.googleapis.com/bigquery/v2/projects/$GOOGLE_CLOUD_PROJECT/datasets"

我建议您将所有 GCS/Google API 列入白名单,或者如果您想更详细地部署防火墙并查看您从 GCS/BigQuery 获得的流量

【讨论】:

以上是关于BigQuery 客户端网址的主要内容,如果未能解决你的问题,请参考以下文章

Bigquery 客户端插入安全性

Google BigQuery - python 客户端 - 创建/管理作业

BigQuery - 使用 Java 客户端库上传 GZIP 压缩文件

BIGQUERY Golang客户获取项目列表

Python BigQuery客户端缓存不起作用

使用 Java 客户端库在 BigQuery 中获取按标签过滤的表列表