0

我在 Big Query 中有一个数据集,其中指定了默认的客户管理的加密密钥 (CMEK)。这是一项要求,并在默认情况下确保新表使用 CMEK 加密(除非特别豁免)。

我有一些数据要摄取到不需要 CMEK 的数据集中,而可以使用 Google 管理的加密密钥 (GMEK)。

主要原因是能够利用使用 CMEK 时不可用的功能,例如能够在 Big Query 中对 SQL 中的表使用通配符。

我的问题是:使用bq load命令行中的命令,当我将数据加载到 Big Query 时,如何使用 GMEK 覆盖默认键?

例如,如果反过来,我可以使用--destination_kms_key并指定我的 CMEK,但我在文档中看不到让我指定 GMEK 的选项。

这可能吗?

4

1 回答 1

2

如果数据集上有默认 KMS 密钥,则只能使用此密钥或指定另一个密钥。您不能使用 GMEK(实际上使用 KMS 密钥)创建表。

为此,您需要删除数据集上的默认 KMS 密钥,然后指定何时要在创建表时使用 KMS 密钥。如果您不指定任何内容,则使用 GMEK。

注意:不要混合 C M EK 和 C S EK。有两种不同的东西不能混合(而且 CSEK 在 BigQuery 上不可用)


编辑 1

没有提到如何删除数据集上的默认 KMS 密钥。我在我的测试中做到了,它奏效了

bq update --default_kms_key= --dataset <myDataset>
于 2021-04-14T13:34:26.280 回答