mirror of
https://github.com/postgres/postgres.git
synced 2025-06-11 20:28:21 +03:00
Allow sepgsql labels to depend on object name.
The main change here is to call security_compute_create_name_raw() rather than security_compute_create_raw(). This ups the minimum requirement for libselinux from 2.0.99 to 2.1.10, but it looks like most distributions will have picked that up before 9.3 is out. KaiGai Kohei
This commit is contained in:
@ -71,10 +71,14 @@ SECURITY LABEL ON TABLE var_tbl
|
||||
CREATE TABLE t3 (s int, t text);
|
||||
INSERT INTO t3 VALUES (1, 'sss'), (2, 'ttt'), (3, 'uuu');
|
||||
|
||||
-- @SECURITY-CONTEXT=unconfined_u:unconfined_r:sepgsql_regtest_dba_t:s0
|
||||
CREATE TABLE t4 (m int, n text);
|
||||
INSERT INTO t4 VALUES (1,'mmm'), (2,'nnn'), (3,'ooo');
|
||||
|
||||
SELECT objtype, objname, label FROM pg_seclabels
|
||||
WHERE provider = 'selinux'
|
||||
AND objtype in ('table', 'column')
|
||||
AND objname in ('t1', 't2', 't3');
|
||||
WHERE provider = 'selinux' AND objtype = 'table' AND objname in ('t1', 't2', 't3');
|
||||
SELECT objtype, objname, label FROM pg_seclabels
|
||||
WHERE provider = 'selinux' AND objtype = 'column' AND (objname like 't3.%' OR objname like 't4.%');
|
||||
|
||||
--
|
||||
-- Tests for SECURITY LABEL
|
||||
@ -229,6 +233,7 @@ SELECT sepgsql_getcon();
|
||||
DROP TABLE IF EXISTS t1 CASCADE;
|
||||
DROP TABLE IF EXISTS t2 CASCADE;
|
||||
DROP TABLE IF EXISTS t3 CASCADE;
|
||||
DROP TABLE IF EXISTS t4 CASCADE;
|
||||
DROP FUNCTION IF EXISTS f1() CASCADE;
|
||||
DROP FUNCTION IF EXISTS f2() CASCADE;
|
||||
DROP FUNCTION IF EXISTS f3() CASCADE;
|
||||
|
Reference in New Issue
Block a user