<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[Forum PostgreSQL - utworzenie tabeli przez funkcję - jakie uprawnienia]]></title>
		<link>https://forum.postgresql.org.pl/viewtopic.php?id=371</link>
		<description><![CDATA[Najświeższe odpowiedzi w utworzenie tabeli przez funkcję - jakie uprawnienia.]]></description>
		<lastBuildDate>Mon, 11 Jan 2010 16:53:25 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Odp: utworzenie tabeli przez funkcję - jakie uprawnienia]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1696#p1696</link>
			<description><![CDATA[nie - mam w 5 różnych schematach :(]]></description>
			<author><![CDATA[dummy@example.com (WitekS)]]></author>
			<pubDate>Mon, 11 Jan 2010 16:53:25 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1696#p1696</guid>
		</item>
		<item>
			<title><![CDATA[Odp: utworzenie tabeli przez funkcję - jakie uprawnienia]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1695#p1695</link>
			<description><![CDATA[[quote=WitekS] Jednak bardziej martwi mnie fakt, że logując się do baze za pomocą pgAdmina nawet jako użytkownik z minimalnymi uprawnieniami mam podgląd na całą strukturę bazy łącznie z definicjami funkcji oczywiście oprócz danych w tabelach... :([/quote]


A wszystko masz w schemie public?]]></description>
			<author><![CDATA[dummy@example.com (psocha)]]></author>
			<pubDate>Mon, 11 Jan 2010 08:03:34 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1695#p1695</guid>
		</item>
		<item>
			<title><![CDATA[Odp: utworzenie tabeli przez funkcję - jakie uprawnienia]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1693#p1693</link>
			<description><![CDATA[Dodałem tylko do funkcji wyzwalacza z której są uruchamiane inne funkcje między innymi tworzące tabele no i jest OK. Wielkie dzięki. A co do bezpieczeństwa to chyba nie ma innego sposobu :{. Jednak bardziej martwi mnie fakt, że logując się do baze za pomocą pgAdmina nawet jako użytkownik z minimalnymi uprawnieniami mam podgląd na całą strukturę bazy łącznie z definicjami funkcji oczywiście oprócz danych w tabelach... :(]]></description>
			<author><![CDATA[dummy@example.com (WitekS)]]></author>
			<pubDate>Sun, 10 Jan 2010 22:27:50 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1693#p1693</guid>
		</item>
		<item>
			<title><![CDATA[Odp: utworzenie tabeli przez funkcję - jakie uprawnienia]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1690#p1690</link>
			<description><![CDATA[A próbowałeś utworzyć funkcję z opcją SECURITY DEFINER, chociaż nie jest to bezpieczne każde jej wywołanie będzie wykonywane na prawach użytkownika który ją stworzył.]]></description>
			<author><![CDATA[dummy@example.com (rski)]]></author>
			<pubDate>Sat, 09 Jan 2010 20:03:41 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1690#p1690</guid>
		</item>
		<item>
			<title><![CDATA[utworzenie tabeli przez funkcję - jakie uprawnienia]]></title>
			<link>https://forum.postgresql.org.pl/viewtopic.php?pid=1689#p1689</link>
			<description><![CDATA[Mam zdefiniowanego użytkownika który może wpisywać dane do kilku tabel. W wyniku wpisania do jednej z nich przez funkcję wyzwalacza powinny się utworzyć odpowiednie tabele (przez funkcje) i wpisy do nich. Problem polega na utworzeniu tabeli przez funkcję jak uruchamiam jako postgres to jest ok a inaczej otrzymuję komunikat 
[code]
ERROR:  must be member of role "postgres"
CONTEXT:  SQL statement " CREATE TABLE pojazdy."_001"(
          "dt_data_czas" timestamp(0) without time zone NOT NULL,
          "int_nr_diag" integer NOT NULL
          --CONSTRAINT "fk_001" FOREIGN KEY (int_nr_diag)
          --REFERENCES ustawienia.t_diag_1_1 (int_nr_diag)
          --MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE
        ) WITH OIDS;
            ALTER TABLE pojazdy."_001" OWNER TO postgres;
            GRANT ALL ON TABLE pojazdy."_001" TO postgres;
            GRANT SELECT ON TABLE pojazdy."_001" TO "serwis";
            GRANT SELECT ON TABLE pojazdy."_001" TO "TW";
            GRANT ALL ON TABLE pojazdy."_001" TO "MTDataProvider";
            COMMENT ON TABLE pojazdy."_001" IS 'początek i koniec informacji diagnostycznej dla pojazdu "_001"'"
PL/pgSQL function "f_int_create_table1_tbl" line 10 at EXECUTE statement
SQL statement "SELECT  pojazdy.f_int_create_table1_tbl( $1 )"
PL/pgSQL function "f_tri_ai_mt_read" line 48 at PERFORM
[/code]
jak "od komentuję" 
[code]
          --CONSTRAINT "fk_001" FOREIGN KEY (int_nr_diag)
          --REFERENCES ustawienia.t_diag_1_1 (int_nr_diag)
          --MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE
[/code]
to mam inny komunikat dotyczący relacji:
[code]
ERROR:  permission denied for relation t_diag_1_1
CONTEXT:  SQL statement " CREATE TABLE pojazdy."_001"(
          "dt_data_czas" timestamp(0) without time zone NOT NULL,
          "int_nr_diag" integer NOT NULL,
          CONSTRAINT "fk_001" FOREIGN KEY (int_nr_diag)
          REFERENCES ustawienia.t_diag_1_1 (int_nr_diag)
          MATCH SIMPLE ON UPDATE CASCADE ON DELETE CASCADE
        ) WITH OIDS;
            --ALTER TABLE pojazdy."_001" SET TABLESPACE baza2;
            ALTER TABLE pojazdy."_001" OWNER TO postgres;
            GRANT ALL ON TABLE pojazdy."_001" TO postgres;
            GRANT SELECT ON TABLE pojazdy."_001" TO "serwis";
            GRANT SELECT ON TABLE pojazdy."_001" TO "TW";
            GRANT ALL ON TABLE pojazdy."_001" TO "MTDataProvider";
            COMMENT ON TABLE pojazdy."_001" IS 'początek i koniec informacji diagnostycznej dla pojazdu "_001"'"
PL/pgSQL function "f_int_create_table1_tbl" line 10 at EXECUTE statement
SQL statement "SELECT  pojazdy.f_int_create_table1_tbl( $1 )"
PL/pgSQL function "f_tri_ai_mt_read" line 48 at PERFORM
[/code] 
Jakie muszę dać minimalne a zarazem wystarczające uprawnienia żeby możliwe było prawidłowe wykonywanie funkcji wyzwalacza wraz z tworzeniem tabel i do jakich obiektów muszę te uprawniania przypisać. Dodam jeszcze że baza jest podzielona na schematy i próbowałem już dawać uprawnienia do wykonywania funkcji, tworzenia bazy, wszystkie do schematu ale bez skutecznie.]]></description>
			<author><![CDATA[dummy@example.com (WitekS)]]></author>
			<pubDate>Sat, 09 Jan 2010 16:28:09 +0000</pubDate>
			<guid>https://forum.postgresql.org.pl/viewtopic.php?pid=1689#p1689</guid>
		</item>
	</channel>
</rss>
