mayo 15, 2006

Script 2 para otorgar permisos de ejecución a sp a un usuario de SQL Server.

Este es otro script que permite otorgar permisos de ejecución a todos los procedimientos almacenados de una base de datos para un usuario en particular.

*****************************SCRIPT*********************************************
--Otorga permisos a todos los stores procedures para un determinado usuario.
--Precondiciones: establecer el nombre de la base de datos de uso y el nombre del usuario al que se desea otorgar los permisos.

Use x
--Nombre de Usuario al que se desea otorgar permiso.
Declare @user varchar(100)
Set @user = 'User1'

--Seleccionar a todos los objetos del tipo store procedure.
declare curse cursor for
SELECT name
FROM sysobjects
WHERE type = 'P' AND category = 0

OPEN CURSE
declare @proc varchar(100)
declare @stmt nvarchar(200)

fetch next from curse into @proc
while @@fetch_status=0
begin
--ejecuta el otorgamiento de permisos.
set @stmt='grant execute on '+@proc+' to ' +@user
exec SP_EXECUTESQL @STMT
print '***El usuario: ' + @user + ' puede ejecutar al store procedure: ' + @proc + '***'
fetch next from curse into @proc
end
--desocupa el cursor.
close curse
deallocate curse
GO
**************************FIN*SCRIPT*********************************************

No hay comentarios.: