SQL 2000: Permiso de ejecucion en roles

27/12/2007 - 04:37 por Juan Carlos Mendoza | Informe spam
Buenas,

Tengo en una base de datos usuarios declarados, con permisos de
lectura y escritura, pero al querer ejecutar stored procedures, no
pueden pues no tienen permisos.
Para solucionar el tema, utilizo roles, los cuales perfilo segun
necesidades y asigno usuarios a los mismos, segun se requiera.
Hay algunos casos en que tengo un rol UR_EXEC_ALL_PROCS, que como su
nombre induce, puede ejecutar cual procedure, el trabajo inicial es
bien tedioso, pues con el EM hay que marcar todos y cada uno de los
procedures para activar el permiso, y en el QA hay que saber el nombre
de cada procedure. Hay alguna forma de hacerlo como se dice "de una
pincelada"?

saludos,

Juan Carlos Mendoza
Callao - Peru

Preguntas similare

Leer las respuestas

#1 Maxi
27/12/2007 - 13:54 | Informe spam
Hola, en 2000 no! en 2005 podrias generar un schema que se llame
Store_procedures y ahi dentro poner todos los procedimientos.
Luego a los grupos le das acceso sobre todo el schema


-
Microsoft M.V.P en SQLServer
SQLTotal Consulting - Servicios en SQLServer
Email:
"Juan Carlos Mendoza" escribió en el mensaje
news:
Buenas,

Tengo en una base de datos usuarios declarados, con permisos de
lectura y escritura, pero al querer ejecutar stored procedures, no
pueden pues no tienen permisos.
Para solucionar el tema, utilizo roles, los cuales perfilo segun
necesidades y asigno usuarios a los mismos, segun se requiera.
Hay algunos casos en que tengo un rol UR_EXEC_ALL_PROCS, que como su
nombre induce, puede ejecutar cual procedure, el trabajo inicial es
bien tedioso, pues con el EM hay que marcar todos y cada uno de los
procedures para activar el permiso, y en el QA hay que saber el nombre
de cada procedure. Hay alguna forma de hacerlo como se dice "de una
pincelada"?

saludos,

Juan Carlos Mendoza
Callao - Peru
Respuesta Responder a este mensaje
#2 Jesús López
27/12/2007 - 20:05 | Informe spam
No es complicado escribir un script que conceda permisos de ejecución de
todos los procedimientos almacenados a un rol determinado:

DECLARE procedure_cursor CURSOR FAST_FORWARD
FOR
SELECT ROUTINE_SCHEMA, ROUTINE_NAME
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE = 'PROCEDURE'

DECLARE @schema sysname
DECLARE @procedure sysname

OPEN procedure_cursor
FETCH procedure_cursor INTO @schema, @procedure
WHILE @@FETCH_STATUS = 0
BEGIN
EXEC ('GRANT EXECUTE ON [' + @schema + '].[' + @procedure + '] TO
UR_EXEC_ALL_PROCS')
PRINT @procedure
FETCH procedure_cursor INTO @schema, @procedure
END
CLOSE procedure_cursor
DEALLOCATE procedure_cursor

Jesús López
www.solidq.com




"Juan Carlos Mendoza" escribió en el mensaje
news:
Buenas,

Tengo en una base de datos usuarios declarados, con permisos de
lectura y escritura, pero al querer ejecutar stored procedures, no
pueden pues no tienen permisos.
Para solucionar el tema, utilizo roles, los cuales perfilo segun
necesidades y asigno usuarios a los mismos, segun se requiera.
Hay algunos casos en que tengo un rol UR_EXEC_ALL_PROCS, que como su
nombre induce, puede ejecutar cual procedure, el trabajo inicial es
bien tedioso, pues con el EM hay que marcar todos y cada uno de los
procedures para activar el permiso, y en el QA hay que saber el nombre
de cada procedure. Hay alguna forma de hacerlo como se dice "de una
pincelada"?

saludos,

Juan Carlos Mendoza
Callao - Peru
Respuesta Responder a este mensaje
#3 Juan Carlos Mendoza
27/12/2007 - 22:11 | Informe spam
Gracias por sus buenas respuestas.

Saludos,

Juan Carlos Mendoza
Callao - Peru
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida