跳转到主要内容
AskTable 通过 Service Account(服务账号)密钥连接 Google BigQuery。整个过程分两步:先在 Google Cloud 创建一个具备只读权限的服务账号并下载 JSON 密钥,再把密钥粘贴进 AskTable。

1. 创建 Service Account 密钥

1

进入服务账号页面

打开 Google Cloud Console,在顶部选择目标项目,进入 IAM 和管理 → 服务账号,点击 创建服务账号,起一个名字(例如 asktable-readonly)。
2

授予 BigQuery 权限

为服务账号授予以下两个角色,这是 AskTable 只读问数所需的最小权限:
角色用途
BigQuery Data Viewerroles/bigquery.dataViewer读取表数据和元数据
BigQuery Job Userroles/bigquery.jobUser提交查询作业
如果只想开放个别 dataset,可以跳过项目级的 Data Viewer:在 BigQuery 控制台对目标 dataset 点击 共享 → 添加主账号,把 Data Viewer 授予该服务账号即可。Job User 仍需项目级授权。
3

创建 JSON 密钥

进入刚创建的服务账号,切到 密钥 标签,点击 添加密钥 → 创建新密钥,类型选择 JSON。浏览器会自动下载一个 .json 密钥文件——它就是下一步要用的全部凭证。
两种情况会导致无法创建密钥:BigQuery 沙箱项目(未启用结算)不支持服务账号密钥;部分企业组织策略(iam.disableServiceAccountKeyCreation)禁用了密钥创建,遇到报错请联系你的 Google Cloud 管理员。

2. 在 AskTable 中连接

在左侧主导航点击 【更多】,进入数据工作区后,点击侧边栏的 【数据源】,再点击右上角 【添加数据】。在大数据分类下选择 Google BigQuery,填写连接信息:
字段说明
数据名称可选,留空将自动生成
Service Account JSON粘贴密钥文件的完整内容,或点击 【上传 JSON 文件】 选择刚下载的 .json 文件自动填充
不需要填写主机、端口或项目 ID——AskTable 会从密钥中自动识别 GCP 项目。 点击 【立即添加】,系统会自动测试连接。连接成功后进入选表页面,勾选需要引入的数据表(BigQuery 的 dataset 对应这里的 schema 层级)。
密钥在 AskTable 中加密存储,任何页面和接口都不会回显。后续如需更换密钥,在数据源详情页的连接配置中重新粘贴即可,留空表示保持不变。

常见问题

现象原因与处理
提示凭证格式不正确粘贴的内容不是完整的 JSON,或缺少 project_id / client_email / private_key 字段。请重新复制整个密钥文件的内容
连接测试报认证失败密钥已被撤销或删除。在 Google Cloud 重新创建一个密钥
连接测试报权限不足服务账号缺少 BigQuery Job User 角色,无法提交查询
选表页面看不到某个 dataset服务账号对该 dataset 没有 BigQuery Data Viewer 权限,按第 1 步为它补充授权

后续步骤