google-bigquery - Google BigQuery - 现有供应表的行级安全性
问题描述
最新的 BigQuery 行级安全功能乍一看似乎很棒,但很快就有很多不足之处,尤其是在可扩展的安全领域。也就是说,在我已经拥有大规模供应表的情况下,我将如何使用 BQ 中的 rls 策略来保护表。
例如,见下文。我有一个现有的配置表来保护表 member_id。供应表具有 b/w member_id 和 cloud_id 关系。因此,如果您有权访问 member_id 111,则会将您的 cloud_id 分配给它,以便您可以看到数据,否则您看不到它。如何将现有供应表与 BQ rls 策略合并?下面不起作用,因为我不能有子查询。我尝试将子查询编写为视图,但 rls 策略仅支持表。
创建或替换行访问策略 tsa_with_rls_lpa on (select tsa.*, cloud_id from project_name.data_set.main_data
a1 inner join project_name.data_set.provisioning_data
a2 on a1.member_id = a2.member_id) 使用 (cloud_id = session_user() 授予 ("user:example@example.com") 过滤器)
解决方案
推荐阅读
- python - 使用 Gstreamer 和 OpenCV (Python) 进行 RTSP 流式传输
- reactjs - 在构造函数中将状态属性设置为未定义是最佳实践吗?
- mysql - ER_WRONG_VALUE_COUNT_ON_ROW
- c++ - 如何使用“派生输入类”创建派生类?
- oracle - 在 CSV、Excel、PDF 中生成并上传关于 get 请求结果的报告到 apex oracle
- node.js - 如何在没有互联网连接的服务器上为 nuxt.js 安装 npm 模块
- error-handling - Rust 错误:在编译时无法知道 `(dyn std::error::Error + 'static)` 类型的值的大小
- azure - 来自 Azure Functions 的莫名其妙的存储事务
- ios - CollectionCell 宽度是根据其内部的 UILabel 的固有宽度而不是实现的 sizeForItem 方法计算的
- ios - AppStore - 应用程序运行时验证(谷歌中的签名密钥)