加密的 AWS PostgreSQL RDS 是如何工作的?
How encrypted AWS PostgreSQL RDS works under the hood?
我读到在创建加密的 AWS Postgres RDS 时,它会加密为其创建的底层 EBS 卷、所有只读副本、备份和快照。
此外,当我查询数据并将其插入数据库时,它的工作方式与未加密的数据库相同,并以纯文本形式给出结果。
我有一些关于它到底是如何工作的问题。
他们在这里:
- How does search work?
可以通过加密要搜索的内容然后在加密的 RDS 上搜索来执行简单的基于值的搜索。但是我在 PostgreSQL 中的搜索也适用于 JSONB 嵌套对象。这是如何实现的?
- How does a partial search work?
我能够对 JSONB 对象内的名称和地址进行部分搜索(like
查询)。如何在加密数据库上进行部分搜索?
- How does insertion work?
我的 PostgreSQL 中有一些 JSONB 列,我能够在我的 JSONB 对象上进行部分插入。这是 PostgreSQL 的一个很酷的特性,但是当整个 JSONB 被加密时它是如何实现的呢?
PS:我对数据库在存储和检索数据方面的工作原理有一些了解,但如果所有内容都已加密,我就无法理解。如果我在某些概念上完全错误,请原谅我。
如果有人能阐明这一点,我将不胜感激,因为我无法在 Internet 上找到它。
谢谢
你想多了。从 RDS 服务器上 运行ning 的 PostgreSQL 进程的角度来看,EBS 卷上的数据库文件似乎没有加密。 encryption/decryption 发生在管理程序层,并且对 VM 上的任何软件 运行 都是透明的。您不断询问它们如何工作的所有这些东西,与在未加密的 EBS 卷上的工作方式完全相同,因为当数据库服务从磁盘请求信息时,它会收到未加密的数据。
可以把它想象成进入笔记本电脑的 BIOS 并对磁盘卷启用某种加密。您是否希望这会破坏您在计算机上尝试 运行 的所有数据库引擎?您是否希望所有软件都能以某种方式知道如何处理笔记本电脑的 BIOS 磁盘加密?当你这样做时,你计算机上 运行 的所有软件(如 PostgreSQL)都不需要突然意识到如何解密磁盘上的数据,它对该软件来说是透明的,对 运行ning 软件好像磁盘没有加密。
我读到在创建加密的 AWS Postgres RDS 时,它会加密为其创建的底层 EBS 卷、所有只读副本、备份和快照。
此外,当我查询数据并将其插入数据库时,它的工作方式与未加密的数据库相同,并以纯文本形式给出结果。
我有一些关于它到底是如何工作的问题。 他们在这里:
- How does search work?
可以通过加密要搜索的内容然后在加密的 RDS 上搜索来执行简单的基于值的搜索。但是我在 PostgreSQL 中的搜索也适用于 JSONB 嵌套对象。这是如何实现的?
- How does a partial search work?
我能够对 JSONB 对象内的名称和地址进行部分搜索(like
查询)。如何在加密数据库上进行部分搜索?
- How does insertion work?
我的 PostgreSQL 中有一些 JSONB 列,我能够在我的 JSONB 对象上进行部分插入。这是 PostgreSQL 的一个很酷的特性,但是当整个 JSONB 被加密时它是如何实现的呢?
PS:我对数据库在存储和检索数据方面的工作原理有一些了解,但如果所有内容都已加密,我就无法理解。如果我在某些概念上完全错误,请原谅我。
如果有人能阐明这一点,我将不胜感激,因为我无法在 Internet 上找到它。
谢谢
你想多了。从 RDS 服务器上 运行ning 的 PostgreSQL 进程的角度来看,EBS 卷上的数据库文件似乎没有加密。 encryption/decryption 发生在管理程序层,并且对 VM 上的任何软件 运行 都是透明的。您不断询问它们如何工作的所有这些东西,与在未加密的 EBS 卷上的工作方式完全相同,因为当数据库服务从磁盘请求信息时,它会收到未加密的数据。
可以把它想象成进入笔记本电脑的 BIOS 并对磁盘卷启用某种加密。您是否希望这会破坏您在计算机上尝试 运行 的所有数据库引擎?您是否希望所有软件都能以某种方式知道如何处理笔记本电脑的 BIOS 磁盘加密?当你这样做时,你计算机上 运行 的所有软件(如 PostgreSQL)都不需要突然意识到如何解密磁盘上的数据,它对该软件来说是透明的,对 运行ning 软件好像磁盘没有加密。