Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google cloud platform 使用BigQuery的谷歌云KMS最佳实践_Google Cloud Platform_Google Bigquery_Google Cloud Dataflow_Google Cloud Kms - Fatal编程技术网

Google cloud platform 使用BigQuery的谷歌云KMS最佳实践

Google cloud platform 使用BigQuery的谷歌云KMS最佳实践,google-cloud-platform,google-bigquery,google-cloud-dataflow,google-cloud-kms,Google Cloud Platform,Google Bigquery,Google Cloud Dataflow,Google Cloud Kms,我需要加密Bq表中的敏感字段,但我的加载是通过数据流完成的。我想到了三种不同的使用方法 使用客户管理的密钥加密整个表,并在不同的分类上创建3个视图,向用户提供服务帐户以访问该视图,并提供服务帐户角色作为KMS中的解密程序,以及数据流服务帐户作为加密程序加载表。(问题我们没有视图级访问权限,因此需要在不同的数据集中维护视图,这使得我们的工作更加困难) 加载时使用Dataflow中的API调用加密字段,并使用服务帐户在运行时生成UDF函数以解密Bq中的Colum数据 示例Id字段使用Dataflow

我需要加密Bq表中的敏感字段,但我的加载是通过数据流完成的。我想到了三种不同的使用方法

  • 使用客户管理的密钥加密整个表,并在不同的分类上创建3个视图,向用户提供服务帐户以访问该视图,并提供服务帐户角色作为KMS中的解密程序,以及数据流服务帐户作为加密程序加载表。(问题我们没有视图级访问权限,因此需要在不同的数据集中维护视图,这使得我们的工作更加困难)

  • 加载时使用Dataflow中的API调用加密字段,并使用服务帐户在运行时生成UDF函数以解密Bq中的Colum数据

    示例Id字段使用Dataflow中的API调用进行加密,我们在Bq中定义了一个UDF函数对其进行解密,但只有那些可以在KMS中访问该数据的人才能解密,否则将引发异常

    通过这种方式,我们向所有用户开放一个表,但只有身份验证用户才能看到该表

    问题:(在运行时连续调用API,这使我们的配额耗尽,成本是另一回事)

  • 在不同的数据集中维护不同的表。带有敏感字段b的加密表。具有非敏感字段的非加密表

    问题:(在BQ运行时维护和生成Sink和Join中的数据)


  • 以上是我的方法和使用案例,任何人都可以帮助我了解使用什么以及为什么它比其他方法更好。

    您能否澄清为什么需要加密敏感字段?是否有法规遵从性要求,或者您想要某些安全属性,或者其他原因?这将帮助我提出正确的解决方案。@TimDierks,我想要某种安全感property@TimDierks我的一个用例是:我的用户可以直接在Bq中看到他们的数据,并可以导入他们的结果,但当他们需要查看敏感字段或希望他们的报告包含敏感数据时,则需要自我验证,并且只有他们的数据从该表中解密并使用Looker/Tableau/Datastudio。@后座议员们,您是否已经获得了针对您的用例的最佳实践?如果没有,我建议您可以在Google Groups()上打开一个新主题,从相关产品团队那里获得建议。@JL-HN感谢您的建议