Puede otorgarles la VIEW DEFINITION
privilegio para esos procesos.
Consulte aquí
por lo que hace este privilegio.
Puede aplicar VIEW DEFINITION
en diferentes ámbitos:
- Servidor
- Base de datos
- Esquema
- Entidades individuales (por ejemplo, un proceso, una función, una vista)
También puede usar una consulta para generar un script para muchos procesos.
Entonces, si tiene un usuario Bob
:
SELECT N'GRANT VIEW DEFINITION ON '
+ QUOTENAME(SPECIFIC_SCHEMA)
+ N'.'
+ QUOTENAME(SPECIFIC_NAME)
+ N' TO Bob;'
FROM INFORMATION_SCHEMA.ROUTINES
WHERE ROUTINE_TYPE = 'PROCEDURE';
eso le dará algo como esto, que luego puede ejecutar:
GRANT VIEW DEFINITION ON [dbo].[aspnet_RegisterSchemaVersion] TO Bob;
GRANT VIEW DEFINITION ON [dbo].[aspnet_CheckSchemaVersion] TO Bob;
GRANT VIEW DEFINITION ON [dbo].[aspnet_Applications_CreateApplication] TO Bob;
...