从Google Cloud Dataflow读取KMS加密文件



我浏览了Google Cloud文档,其中提到:-

只要不创建新对象,Dataflow可以访问受云KMS密钥保护的源和汇点,而无需指定这些源和汇点的云KMS密钥。

我有几个问题:

问题1 .。这是否意味着我们不需要在Beam代码中解密加密的源文件?Dataflow内置了这个功能吗?

问题2 .。如果源文件是加密的,那么默认情况下,Dataflow的输出文件是否会使用相同的密钥(假设我们有一个对称密钥)加密?

问题3 .。这里所指的对象是什么?

PS:我想从一个加密的AVRO文件放在GCS桶,应用我的Apache Beam转换从我的代码和写一个加密的文件回桶。

Cloud Dataflow是一个完全托管的服务,如果没有指定加密,它会自动应用Cloud KMS加密。云密钥管理服务是云托管的密钥管理服务,可以管理对称和非对称加密密钥。

  • 当Cloud KMS与Cloud Dataflow一起使用时,它允许您加密要在Dataflow管道中处理的数据。使用Cloud KMS,可以对临时存储(如Persistent Disk)中临时存储的数据进行加密,以获得数据的端到端保护。您不需要在光束代码中解密源文件,因为来自源的数据是加密的,解密将由Dataflow自动完成。

  • 如果您使用对称密钥,则可以使用单个密钥对存储在密文中的云KMS管理的数据进行加密和解密。如果您使用的是非对称密钥,那么将使用公钥加密数据,使用私钥解密数据。在进行加解密操作前,需要向Dataflow服务帐户提供Cloud KMS CryptoKey Encrypter/Decrypter角色。云KMS根据提供的密文自动确定解密的密钥,因此无需额外注意解密。

  • 你提到的被Cloud KMS加密的对象可以是BigQuery中的表,Cloud Storage中的文件,source和sink中的不同数据。

更多信息请查看本博客

最新更新