From: | Nicola Strappazzon <nicola51980(at)gmail(dot)com> |
---|---|
To: | PostgreSQL Ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Permisos de Usuarios y Bases de Datos. |
Date: | 2007-04-28 16:11:43 |
Message-ID: | A691F5C5-F704-4A5D-B754-6669556957C7@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Buenos dias lista, e tenido la necesidad de crear varias bases de
datos dentro de PostgreSQL, por cada una de ellas se define un
usuario y un grupo, el caso es que no logro evitar que cada usuario
solamente pueda ver SU base de datos y no la de los demas, e probado
de distintas formas y no me ha ido bien, si alguien me puede ayudar
se lo agradeceria mucho.
Les mando un ejemplo del Script q estoy haciendo:
--
-- psql -h localhost -U postgres < SampleDB.sql
--
-- Password is: test
--
-- psql -h localhost -U SampleDB_World SampleDB
--
\connect postgres
SET client_encoding = 'utf8';
SET check_function_bodies = false;
SET client_min_messages = warning;
DROP DATABASE "SampleDB";
DROP ROLE "SampleDB_World";
DROP ROLE "SampleDB_DellStore";
DROP ROLE "SampleDB";
DROP GROUP "grp_SampleDB";
CREATE ROLE "SampleDB" LOGIN PASSWORD 'sampledbadmin'
NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE;
CREATE ROLE "SampleDB_World" LOGIN PASSWORD 'sampledbworld'
NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE;
CREATE ROLE "SampleDB_DellStore" LOGIN PASSWORD 'sampledbdellstore'
NOSUPERUSER NOINHERIT NOCREATEDB NOCREATEROLE;
CREATE ROLE "grp_SampleDB" NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE;
ALTER GROUP "grp_SampleDB" ADD USER "SampleDB_World",
"SampleDB_DellStore";
CREATE DATABASE "SampleDB" WITH TEMPLATE = template0 OWNER =
"SampleDB" ENCODING = 'UTF8' TABLESPACE = pg_default;
\connect SampleDB
CREATE SCHEMA world AUTHORIZATION "SampleDB_World";
CREATE SCHEMA dellstore AUTHORIZATION "SampleDB_DellStore";
COMMENT ON SCHEMA world IS 'Standard World schema';
COMMENT ON SCHEMA dellstore IS 'Standard Dell Store schema';
ALTER ROLE "SampleDB_World" SET search_path=world;
ALTER ROLE "SampleDB_DellStore" SET search_path=dellstore;
---------------------
Fin del Script.
Nicola Strappazzon
nicola51980(at)gmail(dot)com
From | Date | Subject | |
---|---|---|---|
Next Message | Jaime Casanova | 2007-04-28 16:37:53 | Re: Disfrazar Postgresql |
Previous Message | Stalin Bello | 2007-04-28 13:39:28 | Re: administrador para linux |