Kinesis是否在静止时加密其数据?

时间:2016-04-15 20:36:39

标签: security amazon-kinesis

Kinesis消息存储在AWS上时是否加密?

使用什么机制来持久存储消息?

2 个答案:

答案 0 :(得分:4)

  

Kinesis消息存储在AWS上时是否加密?

created Amazon Kinesis stream application的加密机制遵循与您在AWS上创建的任何其他应用程序相同的原则。以下是您需要问自己的问题:

  1. 您是否控制加密方法和整个KMI?
  2. 在这种情况下,您负责加密/解密过程以及​​AWS无法访问的密钥的管理和使用。

    1. 当AWS为您提供KMI存储组件时,您是否控制加密方法并提供KMI管理层?
    2. 在这种情况下,您的加密密钥存储在 AWS环境,但AWS员工无法访问。您需要使用AWS CloudHSM

      1. 您是否决定让AWS控制加密方法和整个KMI?
      2. 在此方案中,AWS代表您自动管理所有内容:意味着,Kinesis消息在存储在AWS上时加密

        实用的解决方案:

        为避免麻烦,您可以使用第三个选项:让AWS代表您执行此操作。这对应于上面列出的第三个案例。为此,最简单,最简单的方法是使用 Amazon Kinesis Firehose 可以在加载数据之前对数据进行批处理,压缩和加密,最大限度地减少目的地使用的存储量并提高安全性。

          

        使用什么机制来持久存储消息?

        数据保留期可按小时增量配置,从24(默认保留期)到168小时(7天),并可通过Streams Limits表单(Amazon Kinesis Streams Limits)索取。但是,您可以使用 AWS Lambda Amazon Kinesis Firehose 将数据从Amazon Kinesis Streams保存到Amazon S3。您可以在这里找到一步一步的实际示例:Persist Streaming Data to Amazon S3 using Amazon Kinesis Firehose and AWS Lambda

答案 1 :(得分:4)

Amazon Kinesis是三个基础AWS产品的总称:

  1. Amazon Kinesis Firehose
  2. Amazon Kinesis Analytics
  3. Amazon Kinesis Streams
  4. Kinesis Streams是其他两款产品的基础组件,它们利用Kinesis Streams提供增值功能。

    在撰写本文时,Kinesis Firehose可用于将数据发送到Amazon S3存储桶,Amazon Redshift表或Amazon Elasticsearch服务(或这些节点的任意组合)。

    在他的回答中提及Billal BEGUERADJ,Amazon Kinesis Firehose提供了一个选项,用于加密目标数据存储中静态数据,通过Kinesis流将数据流传输到目标数据存储。加密是将数据存储到目标中的一部分。有关这方面的更多信息,请参阅常见问题解答“我可以使用哪种加密方式?”在Kinesis Firehose FAQ

    通过Kinesis Steam发送的数据由流保留一段可配置的持续时间。在撰写本文时,默认值为24小时,可选择将持续时间延长至最多7天。 citation

    虽然数据由流保留,但它似乎不会在静止时加密,尽管Amazon Kinesis Streams文档似乎没有专门解决此问题。因此,即使您正在使用启用了加密的Kinesis Firehose,仍然会在基础流上保留24小时的数据(对于您作为此托管服务的最终用户而言是透明的),这些数据在静止时未加密。

    同样,如果您只是直接使用Kinesis流,则数据在静止时不会加密。

    为了克服静态加密的缺乏,您需要分别在生产者和消费者应用程序中使用客户端加密/解密。