NO permitir que modifiquen el valor en una columna

14/01/2005 - 16:53 por Romero Diego | Informe spam
Hola

¿ Alguien sabe como bloquear una Columna para que ningun usuario puedan
modificar el valor ?
y si tiene un ejemplo mejor.

ó ¿ es posible ocultar una columna en Sql -Server?

Agradezco su colaboración

Diego
 

Leer las respuestas

#1 Enrique Albert
14/01/2005 - 17:30 | Informe spam
Hola

si lo que estas buscando en una propiedad en el campo para hacer lo que
comentas, en SQL tienes permisos a nivel tabla para columnas.

El siguiente script crea un usuario y denega permiso de escritura para
la columna "employeeId":

use master
go
sp_addlogin @loginame = 'test', @passwd = 'test', @defdb = 'northwind'
sp_adduser @loginame = 'test'
go

use northwind
go
DENY UPDATE (employeeId) on orders to test
go


Ahora abre una nueva conexion para el usuario de SQL "test", recuerda
que el password es "test"

ejecuta el siguiente script:

select * from orders where orderid = 10248
update orders set employeeid = 5 where orderid = 10248
select * from orders where orderid = 10248
update orders set freight = freight + 1 where orderid = 10248
select * from orders where orderid = 10248

Por ultimo, cuando indicas "ningun usuario", como muy bien sabes en SQL
el usuario sa y el dbo son intocables, por eso la importancia de
establecer usuarios y grupos que no incluyan el sa.

Saludos.

Preguntas similares