如何从AWS Aurora解密数据库活动事件?

时间:2019-07-25 14:30:08

标签: amazon-rds-aurora aws-aurora

我已打开数据库活动事件,我认为这是AWS Aurora上的某种日志文件。目前,它们已通过AWS Firehose通过AWS kinesis传递到s3。 s3中的登录如下所示:

{"type":"DatabaseActivityMonitoringRecords","version":"1.0","databaseActivityEvents":"AYADeOC+7S/mFpoYLr17gZCXuq8AXwABABVhd3MtY3J5cHRvLXB1YmxpYy1rZXkAREFvbjhIZ01uQTVpVHlyS0l3NnVIOS9xdXF3OWEza0xZV0c2QXYzQmtWUFI2alpIK2hsczNwalAyTTIzYnpPS2RXUT09AAEAAkJDABtEYXRhS2V5AAAAgAAAAAwzb2YKNe4h6b2CpykAMLzY7gDftUKUr3QxmxSzylw9qCRxnGW9Fn1qL4uKnbDV/PE44WyOQbXKGXv9s8BxEwIAAAAADAAAEAAAAAAAAAAAAAAAAAC+gU55u4hvWxW1RG/FNNSJ/////wAAAAEAAAAAAAAAAAAAAAEAAACtbmBmDwZw2/1rKiwA4Nyl7cm19/RcHhCpMMwbOFFkZHKL/bvsohf5T+yM9vNxCgAi2qTUIEe17VA5bJ0eCcNAA9mb6Ys+PR1w7QhKrQsHHTBC2dhJ4ELwpXamGRmPLga5Dml2rOveA59YefcJ4PhrqztZXfrS8fBYJ3HgBWHY9nPh1jdyinjQAl61hQrz2LPII85zlqAWTNeL2pXwaRdtGdYeIXXoh4VsoV3Q18Hj/uOQzTIbT8EJvwnk0gj8AGcwZQIxAJNuoCJhHPUfbkk0fHF6HYz1STIc4HX2HOl0qSIHqwpgtQK6BMa3YlPI9hNwhB8x+AIwWDY0bMjuLRGQgjjBv5z1xPpZQ+pMZ4K6m9JaNBFVKxZTvqDL1z7lrV0rlbZThad+","key":"AQIDAHhQgnMAiP8TEQ3/r+nxwePP2VOcLmMGvmFXX8om3hCCugE7IUxSH/eJBEKvnkYoNIqFAAAAfjB8BgkqhkiG9w0BBwagbzBtAgEAMGgGCSqGSIb3DQEHATAeBglghkgBZQMEAS4wEQQMQIX97gE5ioBR1+nnAgEQgDuDX2B2T7nOxjKDyL31+wHJb0pwkCeaU7CwA6BwIkiT7FmhMB71XgvCVrY9C9ABUtc1e5J7QIfsVB214w=="}

我认为KMS密钥正在用于加密该日志文件。如何解密?某处有工作示例代码吗?另外,更重要的是,我正在使用的Aurora数据库是一个没有活动(没有插入,选择,更新)的测试数据库。为什么会有那么多日志?为什么有这么多databaseActivityEvents。他们似乎每天每分钟都被写入s3。

1 个答案:

答案 0 :(得分:0)

是的,它使用RDS活动流KMS密钥(ActivityStreamKmsKeyId)来加密日志事件以及base64编码。您将必须使用AWS加密SDK解密密钥和日志事件。

作为参考,请参见下面的示例Java和python版本:

Processing a Database Activity Stream using the AWS SDK

在firehose管道中,您可以使用Lambda步骤添加转换,然后在您的lambda函数中进行解密。

为什么在闲置的postgres RDS集群中有这么多事件?它们是心跳事件。

解密并查看实际活动事件json时,它具有 type 字段,该字段可以是记录的或心跳的。 记录类型的事件是用户活动生成的事件。