usuarios tipos stored procedimientos permisos para español ejecutar almacenados sql-server sql-server-2005 permissions

sql server - tipos - Ejecutar un procedimiento almacenado como otro permiso de usuario



stored procedure sql server español (4)

Me enfrenté al siguiente problema: hay un usuario que tiene que ejecutar un procedimiento almacenado (spTest). En el cuerpo de spTest se llama sp_trace_generateevent. sp_trace_generateevent requiere alterar los permisos de rastreo, y no quiero que el usuario lo tenga. Así que me gustaría que el usuario pueda ejecutar spTest. ¿Cómo puedo hacer eso?


Como otros han sugerido, puede lograr lo que desee con la cláusula Ejecutar como. Para ver ejemplos de opciones de implementación, eche un vistazo a la documentación de los Libros en línea para la cláusula Ejecutar como .

Para obtener más información y desarrollar una mejor comprensión de este tema, lo que está buscando lograr está incluido en el concepto de seguridad de Context Switching .


Cuando vaya a ejecutar ese procedimiento almacenado específico, deberá crear una conexión diferente utilizando las credenciales de usuario necesarias.


Esto es lo que hice (y tuve éxito):

let Source = Sql.Database("server", "database", [Query= "EXECUTE AS USER=''user'' EXECUTE [schema].[spname] ''parm1'', ''parm2''"])

en

Source