mirror of https://github.com/postgres/postgres
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
1.9 KiB
69 lines
1.9 KiB
CREATE EXTENSION pg_tde;
|
|
SELECT
|
|
pg_proc.oid::regprocedure
|
|
FROM
|
|
pg_catalog.pg_proc
|
|
JOIN pg_catalog.pg_language ON prolang = pg_language.oid
|
|
LEFT JOIN LATERAL aclexplode(proacl) ON TRUE
|
|
WHERE
|
|
proname LIKE 'pg_tde%' AND
|
|
(lanname = 'c' OR prosecdef) AND
|
|
(grantee IS NULL OR grantee = 0)
|
|
ORDER BY pg_proc.oid::regprocedure::text;
|
|
oid
|
|
-------------------------------
|
|
pg_tde_is_encrypted(regclass)
|
|
pg_tde_version()
|
|
(2 rows)
|
|
|
|
|
|
SELECT extname, extversion FROM pg_extension WHERE extname = 'pg_tde';
|
|
extname | extversion
|
|
---------+------------
|
|
pg_tde | 2.0
|
|
(1 row)
|
|
|
|
CREATE TABLE test_enc (id SERIAL, k INTEGER, PRIMARY KEY (id)) USING tde_heap;
|
|
psql:<stdin>:1: ERROR: principal key not configured
|
|
HINT: Use pg_tde_set_key_using_database_key_provider() or pg_tde_set_key_using_global_key_provider() to configure one.
|
|
SELECT pg_tde_add_database_key_provider_file('file-vault', '/tmp/pg_tde_test_001_basic.per');
|
|
pg_tde_add_database_key_provider_file
|
|
---------------------------------------
|
|
|
|
(1 row)
|
|
|
|
SELECT pg_tde_create_key_using_database_key_provider('test-db-key', 'file-vault');
|
|
pg_tde_create_key_using_database_key_provider
|
|
-----------------------------------------------
|
|
|
|
(1 row)
|
|
|
|
SELECT pg_tde_set_key_using_database_key_provider('test-db-key', 'file-vault');
|
|
pg_tde_set_key_using_database_key_provider
|
|
--------------------------------------------
|
|
|
|
(1 row)
|
|
|
|
CREATE TABLE test_enc (id SERIAL, k VARCHAR(32), PRIMARY KEY (id)) USING tde_heap;
|
|
INSERT INTO test_enc (k) VALUES ('foobar'), ('barfoo');
|
|
SELECT * FROM test_enc ORDER BY id;
|
|
id | k
|
|
----+--------
|
|
1 | foobar
|
|
2 | barfoo
|
|
(2 rows)
|
|
|
|
-- server restart
|
|
SELECT * FROM test_enc ORDER BY id;
|
|
id | k
|
|
----+--------
|
|
1 | foobar
|
|
2 | barfoo
|
|
(2 rows)
|
|
|
|
TABLEFILE FOUND: yes
|
|
CONTAINS FOO (should be empty):
|
|
SELECT pg_tde_verify_key()
|
|
psql:<stdin>:1: ERROR: key "test-db-key" not found in key provider "file-vault"
|
|
DROP TABLE test_enc;
|
|
DROP EXTENSION pg_tde;
|
|
|