SQL Server - Permisos

 
Vista:
Imágen de perfil de Juan Diego
Val: 16
Ha aumentado su posición en 4 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Permisos

Publicado por Juan Diego (8 intervenciones) el 03/03/2018 15:20:46
Muy buenas tardes a todos,

Actualmente me encuentro ejecutando una simple consulta que tiene incorporada una función, pero al parecer creería el usuario que creé no tiene los permisos para ejecutarla. Comparto el query ejecutado:

1
2
3
SELECT Campo1, Campo2, CASE WHEN dbo.fnNombreFuncion('20180201', '20180228') > Campo2 THEN Campo1
ELSE dbo.fnNombreFuncion('20180201', '20180228') END AS NombreColumna
FROM tabla WHERE Campo3 = YEAR('20180201') AND Campo4 = MONTH('20180201')

Este es el mensaje arrojado:

Mens. 916, Nivel 14, Estado 1, Línea 1
La entidad de seguridad de servidor "BD1" no puede tener acceso a la base de datos "BD2" en el contexto de seguridad actual.


La base de datos BD2 existe, pero no entiendo porque hace referencia a esta, cuando estoy ejecutando el query con credenciales para la base de datos BD1 .

El usuario está definido con autenticación SQL SERVER y tiene permisos de roles de servidor bulkadmin, public; Adicionalmente el usuario tiene permisos en base de datos para db_accessadmin, db_datareader, db_datawriter, db_ddladmin, db_owner, db_securityadmin, public.

Lo único que se me ocurre es modificar los permisos en Roles del servidor pero no quiero que quede con permisos sobre otras bases de datos.

Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Juan Diego
Val: 16
Ha aumentado su posición en 4 puestos en SQL Server (en relación al último mes)
Gráfica de SQL Server

Permisos

Publicado por Juan Diego (8 intervenciones) el 05/03/2018 18:24:55
Hola a todos,

Ya encontré el problema. La función era compartida y la persona que lo diseñó, específico en el query las tablas asociadas a la base de datos BD2, por tal motivo, el usuario al que solo tenía acceso a BD1 no podía ejecutar la consulta.

Muchas gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar