@@ -4,92 +4,196 @@ psql:<stdin>:1: ERROR: principal key not configured
4
4
HINT: create one using pg_tde_set_key before using encrypted tables
5
5
-- server restart
6
6
SELECT pg_tde_add_database_key_provider_file('file-vault','/tmp/pg_tde_test_keyring.per');
7
- 1
7
+ pg_tde_add_database_key_provider_file
8
+ ---------------------------------------
9
+ 1
10
+ (1 row)
11
+
8
12
SELECT pg_tde_add_database_key_provider_file('file-2','/tmp/pg_tde_test_keyring_2.per');
9
- 2
13
+ pg_tde_add_database_key_provider_file
14
+ ---------------------------------------
15
+ 2
16
+ (1 row)
17
+
10
18
SELECT pg_tde_add_global_key_provider_file('file-2','/tmp/pg_tde_test_keyring_2g.per');
11
- -1
19
+ pg_tde_add_global_key_provider_file
20
+ -------------------------------------
21
+ -1
22
+ (1 row)
23
+
12
24
SELECT pg_tde_add_global_key_provider_file('file-3','/tmp/pg_tde_test_keyring_3.per');
13
- -2
25
+ pg_tde_add_global_key_provider_file
26
+ -------------------------------------
27
+ -2
28
+ (1 row)
29
+
14
30
SELECT pg_tde_list_all_database_key_providers();
15
- (1,file-vault,file,"{""type"" : ""file"", ""path"" : ""/tmp/pg_tde_test_keyring.per""}")
16
- (2,file-2,file,"{""type"" : ""file"", ""path"" : ""/tmp/pg_tde_test_keyring_2.per""}")
31
+ pg_tde_list_all_database_key_providers
32
+ ------------------------------------------------------------------------------------------
33
+ (1,file-vault,file,"{""type"" : ""file"", ""path"" : ""/tmp/pg_tde_test_keyring.per""}")
34
+ (2,file-2,file,"{""type"" : ""file"", ""path"" : ""/tmp/pg_tde_test_keyring_2.per""}")
35
+ (2 rows)
36
+
17
37
SELECT pg_tde_set_key_using_database_key_provider('test-db-key','file-vault');
38
+ pg_tde_set_key_using_database_key_provider
39
+ --------------------------------------------
40
+
41
+ (1 row)
18
42
19
43
CREATE TABLE test_enc(id SERIAL,k INTEGER,PRIMARY KEY (id)) USING tde_heap;
20
44
INSERT INTO test_enc (k) VALUES (5),(6);
21
45
SELECT * FROM test_enc ORDER BY id ASC;
22
- 1|5
23
- 2|6
46
+ id | k
47
+ ----+---
48
+ 1 | 5
49
+ 2 | 6
50
+ (2 rows)
51
+
24
52
SELECT pg_tde_set_key_using_database_key_provider('rotated-key1');
53
+ pg_tde_set_key_using_database_key_provider
54
+ --------------------------------------------
55
+
56
+ (1 row)
25
57
26
58
SELECT * FROM test_enc ORDER BY id ASC;
27
- 1|5
28
- 2|6
59
+ id | k
60
+ ----+---
61
+ 1 | 5
62
+ 2 | 6
63
+ (2 rows)
64
+
29
65
-- server restart
30
66
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_key_info();
31
- 1|file-vault|rotated-key1
67
+ key_provider_id | key_provider_name | key_name
68
+ -----------------+-------------------+--------------
69
+ 1 | file-vault | rotated-key1
70
+ (1 row)
71
+
32
72
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_server_key_info();
33
73
psql:<stdin>:1: ERROR: Principal key does not exists for the database
34
74
HINT: Use set_key interface to set the principal key
35
75
SELECT * FROM test_enc ORDER BY id ASC;
36
- 1|5
37
- 2|6
76
+ id | k
77
+ ----+---
78
+ 1 | 5
79
+ 2 | 6
80
+ (2 rows)
81
+
38
82
SELECT pg_tde_set_key_using_database_key_provider('rotated-key2','file-2');
83
+ pg_tde_set_key_using_database_key_provider
84
+ --------------------------------------------
85
+
86
+ (1 row)
39
87
40
88
SELECT * FROM test_enc ORDER BY id ASC;
41
- 1|5
42
- 2|6
89
+ id | k
90
+ ----+---
91
+ 1 | 5
92
+ 2 | 6
93
+ (2 rows)
94
+
43
95
-- server restart
44
96
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_key_info();
45
- 2|file-2|rotated-key2
97
+ key_provider_id | key_provider_name | key_name
98
+ -----------------+-------------------+--------------
99
+ 2 | file-2 | rotated-key2
100
+ (1 row)
101
+
46
102
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_server_key_info();
47
103
psql:<stdin>:1: ERROR: Principal key does not exists for the database
48
104
HINT: Use set_key interface to set the principal key
49
105
SELECT * FROM test_enc ORDER BY id ASC;
50
- 1|5
51
- 2|6
106
+ id | k
107
+ ----+---
108
+ 1 | 5
109
+ 2 | 6
110
+ (2 rows)
111
+
52
112
SELECT pg_tde_set_key_using_global_key_provider('rotated-key', 'file-3', false);
113
+ pg_tde_set_key_using_global_key_provider
114
+ ------------------------------------------
115
+
116
+ (1 row)
53
117
54
118
SELECT * FROM test_enc ORDER BY id ASC;
55
- 1|5
56
- 2|6
119
+ id | k
120
+ ----+---
121
+ 1 | 5
122
+ 2 | 6
123
+ (2 rows)
124
+
57
125
-- server restart
58
126
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_key_info();
59
- -2|file-3|rotated-key
127
+ key_provider_id | key_provider_name | key_name
128
+ -----------------+-------------------+-------------
129
+ -2 | file-3 | rotated-key
130
+ (1 row)
131
+
60
132
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_server_key_info();
61
133
psql:<stdin>:1: ERROR: Principal key does not exists for the database
62
134
HINT: Use set_key interface to set the principal key
63
135
SELECT * FROM test_enc ORDER BY id ASC;
64
- 1|5
65
- 2|6
136
+ id | k
137
+ ----+---
138
+ 1 | 5
139
+ 2 | 6
140
+ (2 rows)
141
+
66
142
SELECT pg_tde_set_key_using_global_key_provider('rotated-keyX', 'file-2', false);
143
+ pg_tde_set_key_using_global_key_provider
144
+ ------------------------------------------
145
+
146
+ (1 row)
67
147
68
148
SELECT * FROM test_enc ORDER BY id ASC;
69
- 1|5
70
- 2|6
149
+ id | k
150
+ ----+---
151
+ 1 | 5
152
+ 2 | 6
153
+ (2 rows)
154
+
71
155
-- server restart
72
156
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_key_info();
73
- -1|file-2|rotated-keyX
157
+ key_provider_id | key_provider_name | key_name
158
+ -----------------+-------------------+--------------
159
+ -1 | file-2 | rotated-keyX
160
+ (1 row)
161
+
74
162
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_server_key_info();
75
163
psql:<stdin>:1: ERROR: Principal key does not exists for the database
76
164
HINT: Use set_key interface to set the principal key
77
165
SELECT * FROM test_enc ORDER BY id ASC;
78
- 1|5
79
- 2|6
166
+ id | k
167
+ ----+---
168
+ 1 | 5
169
+ 2 | 6
170
+ (2 rows)
171
+
80
172
ALTER SYSTEM SET pg_tde.inherit_global_providers = OFF;
81
173
-- server restart
82
174
SELECT pg_tde_set_key_using_global_key_provider('rotated-keyX2', 'file-2', false);
83
175
psql:<stdin>:1: ERROR: Usage of global key providers is disabled. Enable it with pg_tde.inherit_global_providers = ON
84
176
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_key_info();
85
- -1|file-2|rotated-keyX
177
+ key_provider_id | key_provider_name | key_name
178
+ -----------------+-------------------+--------------
179
+ -1 | file-2 | rotated-keyX
180
+ (1 row)
181
+
86
182
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_server_key_info();
87
183
psql:<stdin>:1: ERROR: Principal key does not exists for the database
88
184
HINT: Use set_key interface to set the principal key
89
185
SELECT pg_tde_set_key_using_database_key_provider('rotated-key2','file-2');
186
+ pg_tde_set_key_using_database_key_provider
187
+ --------------------------------------------
188
+
189
+ (1 row)
90
190
91
191
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_key_info();
92
- 2|file-2|rotated-key2
192
+ key_provider_id | key_provider_name | key_name
193
+ -----------------+-------------------+--------------
194
+ 2 | file-2 | rotated-key2
195
+ (1 row)
196
+
93
197
SELECT key_provider_id, key_provider_name, key_name FROM pg_tde_server_key_info();
94
198
psql:<stdin>:1: ERROR: Principal key does not exists for the database
95
199
HINT: Use set_key interface to set the principal key
0 commit comments