none
Otorgar permisos a un usuario para visualizar y ejecutar funciones RRS feed

  • Pregunta

  • Cordial saludo,

    Debo establecer permisos a un usuario X para que pueda ejecutar funciones creadas en una base de datos que tipo de permiso debo establecer y como debo realizarlo?

    miércoles, 27 de febrero de 2019 22:41

Respuestas

  • ¿Funciones de USUARIO?, las funciones no se ejecutan, bueno, quiero decir con un EXEC, deber ser algo como SELECT dbo.MyFunction()

    IIslas Master Consultant SQL Server

    jueves, 28 de febrero de 2019 0:01
  • Para que el usuario pueda "llamar" a una función hay que concederle el permiso SELECT sobre la función.

    Si por dentro la función accede a alguna tabla u otro objeto de la base de datos, entonces se necesita un requisito adicional: o bien el usuario tiene que tener también permiso sobre ese objeto, o bien el propietario de la función y de ese objeto tienen que coincidir, para que se aplique el "ownership chaining" y el llamante de la función pueda ejecutarla.

    Para coincidir el permiso puedes hacerlo desde SSMS, pinchando en las propiedades de la función, permissions, seleccionar el usuario, poner la X en Select; o puedes ejecutar un comando "GRANT SELECT ON...".

    jueves, 28 de febrero de 2019 7:46

Todas las respuestas

  • ¿Funciones de USUARIO?, las funciones no se ejecutan, bueno, quiero decir con un EXEC, deber ser algo como SELECT dbo.MyFunction()

    IIslas Master Consultant SQL Server

    jueves, 28 de febrero de 2019 0:01
  • Para que el usuario pueda "llamar" a una función hay que concederle el permiso SELECT sobre la función.

    Si por dentro la función accede a alguna tabla u otro objeto de la base de datos, entonces se necesita un requisito adicional: o bien el usuario tiene que tener también permiso sobre ese objeto, o bien el propietario de la función y de ese objeto tienen que coincidir, para que se aplique el "ownership chaining" y el llamante de la función pueda ejecutarla.

    Para coincidir el permiso puedes hacerlo desde SSMS, pinchando en las propiedades de la función, permissions, seleccionar el usuario, poner la X en Select; o puedes ejecutar un comando "GRANT SELECT ON...".

    jueves, 28 de febrero de 2019 7:46