google-cloud-platform - GCP Bigquery 通过 terraform 创建自动视图
问题描述
我对 Bigquery 和 terraform 中的授权视图有一个具体问题。
情况:我已经创建了简单的 terraform 脚本来创建一些 Bigquery 数据集、表、视图和一个 IAM 条目。特别是,我创建了两个数据集(source_dataset
和target_dataset
),其中的一些表source_dataset
和 中的视图target_dataset
,它们基于source_database
. 线索是使用Bigquery 授权视图来分离权限 - 视图应该可以由组 od 查看者访问,这些查看者无权访问原始source_dataset
视图,但仍然能够查询视图。
问题:是否可以从 terraform 代码中授权视图?当我尝试使用 terraform 代码时,出现了鸡/蛋问题。我知道,可以分开构建配置 - 在 terraform 中编写一些代码,然后通过 python 代码授权视图,但理想情况下只使用 100% terraform。
谢谢。
解决方案
似乎鸡和蛋的问题已在即将发布的版本中得到解决:
定义的问题:
无法创建视图,因为它依赖于另一个数据集,无法创建另一个数据集,因为它依赖于视图
存在循环依赖。
决议:
一旦发布(它应该出现在版本 3.17.0 中),它将可用作 google_bigquery_dataset_access 资源。这是文档页面的预览:https ://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/bigquery_dataset_access.html.markdown
推荐阅读
- python - 通过分隔符将记录 DataFrame 拆分为多个记录
- c# - 使用 api 在 DocuSign 中关闭用户帐户
- c# - 如何在 T4 CodeGen 中使用类的变量
- javascript - 在 React 中选中开关/复选框时,如何执行通过道具传递的函数?
- ms-access - Python 融化的 MS Access 版本
- javascript - 如何编写一个javascript程序来满足以下需求?
- javascript - 如何异步检索 fetch PromiseValue?
- assembly - 间接访问堆栈失败
- node.js - 在我自己的 Web 应用程序中使用 passportjs 管理单点登录 - 共享登录
- html - 应用透明度时,有没有办法匹配两个堆叠元素的颜色?