我正在寻求在GCP中实现行级安全性,尽管授权视图是处理此问题的一种方式,但是我的用例中有动态创建的多个表。我们如何在这里实现访问控制?我们是否需要为每个表创建一个单独的视图并将其保存在不同的数据集中?
答案 0 :(得分:0)
在procedure of creating authorize views之后,您可以:
创建您的源数据集(动态表将驻留在其中)。
为具有相同权限的每组用户创建一个数据集(用于存储视图),例如一个数据集用于开发人员,另一个数据集用于分析人员,另一个数据集用于测试人员,等等。
为您的用户分配一个项目级别的Cloud IAM角色(使他们能够创建BigQuery查询作业)。
为每个用户分配对数据集的访问控制,该数据集将包含视图并与其视图相对应(从步骤2开始)。
动态创建表。
为每个数据集动态创建视图(从第2步开始),以查询组应有权访问的信息(请注意,由于引用表应该存在,因此您无法预先创建视图)。
< / li>动态授权视图。
或者对于第3步和第4步,您可以将用户分配到Google Groups(每个组将有一个数据集)。
还要注意these limits。