|
|
|
@ -36,7 +36,7 @@ CREATE TABLE test_tablesas AS SELECT * FROM test;
|
|
|
|
|
CREATE VIEW test_view AS SELECT * FROM test;
|
|
|
|
|
CREATE MATERIALIZED VIEW test_mview AS SELECT * FROM test;
|
|
|
|
|
SELECT * INTO test_selectinto FROM test;
|
|
|
|
|
CREATE FUNCTION test_function() RETURNS text AS $$ BEGIN RETURN 'test'; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
CREATE FUNCTION test_function() RETURNS integer AS $$ BEGIN RETURN 1; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
|
|
|
|
|
SELECT * FROM test;
|
|
|
|
|
SELECT * FROM test_tablesas;
|
|
|
|
@ -54,7 +54,7 @@ SELECT 'denied_tableas', catch_permission_error($$SELECT * FROM test_tablesas;$$
|
|
|
|
|
SELECT 'denied_view', catch_permission_error($$SELECT * FROM test_view;$$);
|
|
|
|
|
SELECT 'denied_mview', catch_permission_error($$SELECT * FROM test_mview;$$);
|
|
|
|
|
SELECT 'denied_selectinto', catch_permission_error($$SELECT * FROM test_selectinto;$$);
|
|
|
|
|
SELECT test_function();
|
|
|
|
|
SELECT 'denied_function', catch_permission_error($$SELECT test_function();$$);
|
|
|
|
|
|
|
|
|
|
\set QUIET on
|
|
|
|
|
SET SESSION AUTHORIZATION "creator_role";
|
|
|
|
@ -81,7 +81,7 @@ CREATE TABLE test2_tablesas AS SELECT * FROM test2;
|
|
|
|
|
CREATE VIEW test2_view AS SELECT * FROM test2;
|
|
|
|
|
CREATE MATERIALIZED VIEW test2_mview AS SELECT * FROM test2;
|
|
|
|
|
SELECT * INTO test2_selectinto FROM test2;
|
|
|
|
|
CREATE FUNCTION test2_function() RETURNS text AS $$ BEGIN RETURN 'test'; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
CREATE FUNCTION test2_function() RETURNS integer AS $$ BEGIN RETURN 1; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
|
|
|
|
|
SELECT * FROM test2;
|
|
|
|
|
SELECT * FROM test2_tablesas;
|
|
|
|
@ -99,7 +99,7 @@ SELECT 'denied_tableas2', catch_permission_error($$SELECT * FROM test2_tablesas;
|
|
|
|
|
SELECT 'denied_view2', catch_permission_error($$SELECT * FROM test2_view;$$);
|
|
|
|
|
SELECT 'denied_mview2', catch_permission_error($$SELECT * FROM test2_mview;$$);
|
|
|
|
|
SELECT 'denied_selectinto2', catch_permission_error($$SELECT * FROM test2_selectinto;$$);
|
|
|
|
|
SELECT test2_function();
|
|
|
|
|
SELECT 'denied_function2', catch_permission_error($$SELECT test2_function();$$);
|
|
|
|
|
|
|
|
|
|
\set QUIET on
|
|
|
|
|
SET SESSION AUTHORIZATION "creator_role";
|
|
|
|
@ -126,14 +126,14 @@ CREATE TABLE test3_tablesas AS SELECT * FROM test3;
|
|
|
|
|
CREATE VIEW test3_view AS SELECT * FROM test3;
|
|
|
|
|
CREATE MATERIALIZED VIEW test3_mview AS SELECT * FROM test3;
|
|
|
|
|
SELECT * INTO test3_selectinto FROM test3;
|
|
|
|
|
CREATE FUNCTION test3_function() RETURNS text AS $$ BEGIN RETURN 'test'; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
CREATE FUNCTION test3_function() RETURNS integer AS $$ BEGIN RETURN 1; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
|
|
|
|
|
SELECT * FROM test3;
|
|
|
|
|
SELECT * FROM test3_tablesas;
|
|
|
|
|
SELECT * FROM test3_view;
|
|
|
|
|
SELECT * FROM test3_mview;
|
|
|
|
|
SELECT * FROM test3_selectinto;
|
|
|
|
|
SELECT test_function();
|
|
|
|
|
SELECT test3_function();
|
|
|
|
|
|
|
|
|
|
\set QUIET on
|
|
|
|
|
SET SESSION AUTHORIZATION "ownership_role";
|
|
|
|
@ -144,7 +144,7 @@ SELECT 'denied_tableas3', catch_permission_error($$SELECT * FROM test3_tablesas;
|
|
|
|
|
SELECT 'denied_view3', catch_permission_error($$SELECT * FROM test3_view;$$);
|
|
|
|
|
SELECT 'denied_mview3', catch_permission_error($$SELECT * FROM test3_mview;$$);
|
|
|
|
|
SELECT 'denied_selectinto3', catch_permission_error($$SELECT * FROM test3_selectinto;$$);
|
|
|
|
|
SELECT test_function();
|
|
|
|
|
SELECT 'denied_function3', catch_permission_error($$SELECT test3_function();$$);
|
|
|
|
|
|
|
|
|
|
\set QUIET on
|
|
|
|
|
SET SESSION AUTHORIZATION "creator_role";
|
|
|
|
@ -171,7 +171,7 @@ CREATE TABLE test4_tablesas AS SELECT * FROM test4;
|
|
|
|
|
CREATE VIEW test4_view AS SELECT * FROM test4;
|
|
|
|
|
CREATE MATERIALIZED VIEW test4_mview AS SELECT * FROM test4;
|
|
|
|
|
SELECT * INTO test4_selectinto FROM test4;
|
|
|
|
|
CREATE FUNCTION test4_function() RETURNS text AS $$ BEGIN RETURN 'test'; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
CREATE FUNCTION test4_function() RETURNS integer AS $$ BEGIN RETURN 1; END; $$ LANGUAGE PLPGSQL;
|
|
|
|
|
|
|
|
|
|
SELECT * FROM test4;
|
|
|
|
|
SELECT * FROM test4_tablesas;
|
|
|
|
|