@@ -64,17 +64,45 @@ SELECT sepgsql_getcon();-- confirm client privilege
64
64
65
65
CREATE TABLE t3 (s int, t text);
66
66
INSERT INTO t3 VALUES (1, 'sss'), (2, 'ttt'), (3, 'uuu');
67
+ SELECT sepgsql_getcon();-- confirm client privilege
68
+ sepgsql_getcon
69
+ ----------------------------------------------------
70
+ unconfined_u:unconfined_r:sepgsql_regtest_dba_t:s0
71
+ (1 row)
72
+
73
+ CREATE TABLE t4 (m int, n text);
74
+ INSERT INTO t4 VALUES (1,'mmm'), (2,'nnn'), (3,'ooo');
67
75
SELECT objtype, objname, label FROM pg_seclabels
68
- WHERE provider = 'selinux'
69
- AND objtype in ('table', 'column')
70
- AND objname in ('t1', 't2', 't3');
76
+ WHERE provider = 'selinux' AND objtype = 'table' AND objname in ('t1', 't2', 't3');
71
77
objtype | objname | label
72
78
---------+---------+-----------------------------------------------
73
79
table | t1 | unconfined_u:object_r:sepgsql_table_t:s0
74
80
table | t2 | unconfined_u:object_r:sepgsql_table_t:s0
75
81
table | t3 | unconfined_u:object_r:user_sepgsql_table_t:s0
76
82
(3 rows)
77
83
84
+ SELECT objtype, objname, label FROM pg_seclabels
85
+ WHERE provider = 'selinux' AND objtype = 'column' AND (objname like 't3.%' OR objname like 't4.%');
86
+ objtype | objname | label
87
+ ---------+-------------+-----------------------------------------------
88
+ column | t3.t | unconfined_u:object_r:user_sepgsql_table_t:s0
89
+ column | t3.s | unconfined_u:object_r:user_sepgsql_table_t:s0
90
+ column | t3.ctid | unconfined_u:object_r:user_sepgsql_table_t:s0
91
+ column | t3.xmin | unconfined_u:object_r:user_sepgsql_table_t:s0
92
+ column | t3.cmin | unconfined_u:object_r:user_sepgsql_table_t:s0
93
+ column | t3.xmax | unconfined_u:object_r:user_sepgsql_table_t:s0
94
+ column | t3.cmax | unconfined_u:object_r:user_sepgsql_table_t:s0
95
+ column | t3.tableoid | unconfined_u:object_r:user_sepgsql_table_t:s0
96
+ column | t4.n | unconfined_u:object_r:sepgsql_table_t:s0
97
+ column | t4.m | unconfined_u:object_r:sepgsql_table_t:s0
98
+ column | t4.ctid | unconfined_u:object_r:sepgsql_sysobj_t:s0
99
+ column | t4.xmin | unconfined_u:object_r:sepgsql_sysobj_t:s0
100
+ column | t4.cmin | unconfined_u:object_r:sepgsql_sysobj_t:s0
101
+ column | t4.xmax | unconfined_u:object_r:sepgsql_sysobj_t:s0
102
+ column | t4.cmax | unconfined_u:object_r:sepgsql_sysobj_t:s0
103
+ column | t4.tableoid | unconfined_u:object_r:sepgsql_sysobj_t:s0
104
+ (16 rows)
105
+
78
106
--
79
107
-- Tests for SECURITY LABEL
80
108
--
@@ -456,6 +484,7 @@ SELECT sepgsql_getcon();-- confirm client privilege
456
484
DROP TABLE IF EXISTS t1 CASCADE;
457
485
DROP TABLE IF EXISTS t2 CASCADE;
458
486
DROP TABLE IF EXISTS t3 CASCADE;
487
+ DROP TABLE IF EXISTS t4 CASCADE;
459
488
DROP FUNCTION IF EXISTS f1() CASCADE;
460
489
DROP FUNCTION IF EXISTS f2() CASCADE;
461
490
DROP FUNCTION IF EXISTS f3() CASCADE;