在 GCP 中,如何处理作为测试部署一部分的 KMS?

问题描述

在我的 GCP 部署中,我使用其自己的动态创建的 KMS。部署每天创建数百次(用于测试)。测试完成后,部署将终止并移除。到现在为止还挺好。唯一的问题是,删除后,创建了 KMS,或者说它的残余物永远存在(因为众所周知,KMS 密钥无法删除)。

我的测试是对部署进行测试,即每次运行都需要进行新的部署,并且由于KMS应该是部署的一部分(在客户方面),因此无法从测试中消除部署。

我应该如何解决这个任务?

交叉发布到:

解决方法

目前最好的做法是:

  • 为这些键创建一个测试项目。
  • 在每次运行时,创建一个具有随机名称的密钥环(例如使用 UUID)。
  • 在该密钥环中创建一个密钥(您可以使用常量名称或其他 UUID)。
  • 测试完成后,销毁该密钥的密钥材料。

本项目会积累大量空钥匙圈和钥匙,不收取任何费用。然而,这不应该是一个实际问题;我们在一个项目中测试了多达 5000 万个密钥的 KMS,没有遇到限制。但是,UI 不太适合管理这么多密钥环,因此您需要依赖 API 进行任何操作。

感谢您使用 GCP 和 KMS!