The always-confidential database feature encrypts sensitive data columns in your ApsaraDB RDS for PostgreSQL instance. This prevents unauthorized users from accessing the plaintext of the protected data columns by using software and tools in the cloud platform, while ensuring that the sensitive data columns remain available but invisible to database users. By default, the feature is integrated with ApsaraDB RDS for PostgreSQL, but you must complete the required configurations before you can use it. Enable the feature by installing the EncDB extension on each database you want to protect.
Supported instance types
The feature is supported on all standard RDS instances. Two editions are available:
| Edition | Instance family |
|---|---|
| Basic edition | All instance types except Intel SGX-based security-enhanced |
| Hardware-enhanced edition (Intel SGX-based) | Intel SGX-based security-enhanced instance types |
For a detailed comparison of security levels, see Security levels provided by the always-confidential database feature.
Serverless RDS instances and YiTian RDS instances are not supported.
Prerequisites
Before you begin, make sure you have:
An ApsaraDB RDS for PostgreSQL instance created and running. See Create an ApsaraDB RDS for PostgreSQL instance
A privileged account on the instance. See Create an account
(Basic edition only) A minor engine version of 20230830 or later
Enable the always-confidential database feature
Create a database on your RDS instance. See Create a database.
Connect to the database using your privileged account. See Connect to an ApsaraDB RDS for PostgreSQL instance.
Install the EncDB extension:
-- Install the EncDB extension. CREATE EXTENSION encdb;The always-confidential database feature is now enabled on this database.
What's next
Before using the feature, define which columns to protect based on your business requirements. See Define sensitive data.