Skip site navigation (1) Skip section navigation (2)

Re: Permisos por columna

From: Anthony Rafael Sotolongo Leon <asotolongo(at)uci(dot)cu>
To: juan ramirez miranda <juanramirez(at)cajazacate(dot)com(dot)sv>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Permisos por columna
Date: 2011-05-30 23:07:11
Message-ID: 94760854.476731306796831042.JavaMail.root@ucimail1.uci.cu (view raw, whole thread or download thread mbox)
Thread:
Lists: pgsql-es-ayuda
----- Mensaje original -----
De: "juan ramirez miranda" <juanramirez(at)cajazacate(dot)com(dot)sv>
Para: pgsql-es-ayuda(at)postgresql(dot)org
Enviados: Lunes, 30 de Mayo 2011 14:08:30 GMT -04:00 Georgetown
Asunto: [pgsql-es-ayuda] Permisos por columna

hola comunidad,

tengo una duda respecto al uso de los privilegios por columna.

Tengo una tabla así, tal como la presento


CREATE TABLE generales.gen_usuarios
(
  id_usuario integer,
  clave text,
  nombre text,
  agencia agencias,
  cargo integer,
  activo boolean DEFAULT true,
  ejecutivo_caja boolean DEFAULT false,
  CONSTRAINT gen_usuarios_pkey PRIMARY KEY (codigo_usuario),
  CONSTRAINT gen_usuarios_cargo_fkey FOREIGN KEY (cargo)
      REFERENCES generales.gen_cargos_empresa (cargo) MATCH SIMPLE
      ON UPDATE CASCADE ON DELETE RESTRICT,
  CONSTRAINT gen_usuarios_id_usuario_key UNIQUE (id_usuario)
)
WITH (
  OIDS=FALSE
);
ALTER TABLE generales.gen_usuarios OWNER TO postgres;


lo que deseo es que los usuarios de mi sistema sólo puedan actualizar el
campo "«clave»", lo he intentado asignando el siguiente script.

  GRANT UPDATE(clave) ON generales.gen_usuarios TO arwilfredo;

y al ejecutar el siguiente script, siempre muestra error

  UPDATE gen_usuarios SET clave= 'jaja' WHERE codigo_usuario='arwilfredo'

permiso denegado a la relación gen_usuarios

cuando haces esto 
GRANT UPDATE(clave) ON generales.gen_usuarios TO arwilfredo;
estas con agun superuario?

si lo haces como super user 
estas diciendo que el role de tu  cluster 'arwilfredo' va a tener permiso de update en la columna clave de tu relación generales.gen_usuarios.

ahora cuando ejecutas 
 UPDATE gen_usuarios SET clave= 'jaja' WHERE codigo_usuario='arwilfredo'

estas contado a tu base de datos con el usuario 'arwilfredo' del cluster?
sino estas claro ejecuta select current_user. y te da el user con el cual estas conectado

ahora debes cerciorar ese user tenga tambien privilegios de uso de ese esquema.

saludos


pgsql-es-ayuda by date

Next:From: Álvaro Hernández TortosaDate: 2011-05-31 00:23:55
Subject: Re: Tablas no modificables
Previous:From: Diego AyalaDate: 2011-05-30 21:30:08
Subject: Re: error al tratar de instalar funciones de dblink

Privacy Policy | About PostgreSQL
Copyright © 1996-2017 The PostgreSQL Global Development Group