我在Big Query中有一个指定了默认客户管理加密密钥(CMEK(的数据集。这是一项要求,并确保默认情况下,使用CMEK对新表进行加密(除非特别豁免(。
我有一些数据想吸收到数据集中,这些数据不需要CMEK,而是可以使用谷歌管理加密密钥(GMEK(。
主要原因是能够利用在使用CMEK时不可用的功能,例如能够在BigQuery中为SQL中的表使用通配符。
我的问题是:使用命令行中的bq load
命令,当我将数据加载到Big Query时,如何用GMEK覆盖默认密钥?
例如,如果是相反的方式,我可以使用--destination_kms_key
并指定我的CMEK,但我在文档中看不到允许我指定GMEK的选项。
这可能吗?
当数据集中有默认的KMS密钥时,您只能使用此密钥或指定另一个密钥。您不能用GMEK(实际上是用KMS密钥(创建表。
为此,您需要删除数据集上的默认KMS键,然后指定在创建表时何时使用KMS键。如果未指定任何内容,则使用GMEK。
注意:不要混合CMEK和CSEK。这是两种不同的东西不能混合(并且CSEK在BigQuery上不可用(
编辑1
它没有提到如何删除数据集上的默认KMS密钥。我在测试中做到了这一点,它起到了的作用
bq update --default_kms_key= --dataset <myDataset>