Permisos !!Urgente!!!!!!!!!!!!!

21/01/2004 - 20:40 por anonymous | Informe spam
Hola compañeros...

Tengo un inconveniente con permisos para un usuario.

Resulta que tengo un usuario llamado PRUEBA.

Este usuario PRUEBA necesita acceder a un store procedure
llamado sp_Test.

El store procedure realiza lo siguiente:

1) Recibe un parámetro que es una cadena con la ruta a un
archivo en disco.
2) Crea una tabla temporal llamada #ruta
3) En la variable @sql de tipo NVARCHAR, crea una
instrucción BULK INSERT que lee el archivo y carga los
datos a la tabla #ruta
4) Ejecuta la instrucción contenida en la variable de la
siguiente manera: EXEC sp_executesql @sql
5) Realiza cálculos con los datos de la tabla temporal
6) Elimina la tabla temporal #ruta

Al usuario PRUEBA se le han asignado los siguientes
permisos:

1) PUBLIC (como función de base de datos)
2) Realizar SELECT sobre todas las tablas de la base de
datos
3) Realizar EXEC sobre todos los store procedure
4) BULK INSERT ADMINISTRATORS (como función de servidor)

Bueno, sucede que al ejecutar el store procedure sp_Test
de la siguiente manera:

EXEC sp_Test 'C:\archivo.txt'

Genera el siguiente error:

Servidor: mensaje 8104, nivel 16, estado 2, línea 1
El usuario actual no es el propietario de la base de datos
u objeto de la tabla '#ruta'. No se puede realizar la
operación SET.

Alguien puede informarme:

1) ¿A qué se debe ese error?
2) ¿Qué permisos debo darle al usuario PRUEBA para el
store procedure lo ejecute sin problemas?
3) ¿Estoy otorgando permisos equivocados?


Mil gracias
 

Leer las respuestas

#1 Adrian Garcia
22/01/2004 - 07:43 | Informe spam
Creo que esta faltando permisos para crear tablas sobre la base tempdb.

Saludos
Adrian D. Garcia
NDsoft


"anonymous" wrote in message
news:176701c3e056$61de8c50$
Hola compañeros...

Tengo un inconveniente con permisos para un usuario.

Resulta que tengo un usuario llamado PRUEBA.

Este usuario PRUEBA necesita acceder a un store procedure
llamado sp_Test.

El store procedure realiza lo siguiente:

1) Recibe un parámetro que es una cadena con la ruta a un
archivo en disco.
2) Crea una tabla temporal llamada #ruta
3) En la variable @sql de tipo NVARCHAR, crea una
instrucción BULK INSERT que lee el archivo y carga los
datos a la tabla #ruta
4) Ejecuta la instrucción contenida en la variable de la
siguiente manera: EXEC sp_executesql @sql
5) Realiza cálculos con los datos de la tabla temporal
6) Elimina la tabla temporal #ruta

Al usuario PRUEBA se le han asignado los siguientes
permisos:

1) PUBLIC (como función de base de datos)
2) Realizar SELECT sobre todas las tablas de la base de
datos
3) Realizar EXEC sobre todos los store procedure
4) BULK INSERT ADMINISTRATORS (como función de servidor)

Bueno, sucede que al ejecutar el store procedure sp_Test
de la siguiente manera:

EXEC sp_Test 'C:\archivo.txt'

Genera el siguiente error:

Servidor: mensaje 8104, nivel 16, estado 2, línea 1
El usuario actual no es el propietario de la base de datos
u objeto de la tabla '#ruta'. No se puede realizar la
operación SET.

Alguien puede informarme:

1) ¿A qué se debe ese error?
2) ¿Qué permisos debo darle al usuario PRUEBA para el
store procedure lo ejecute sin problemas?
3) ¿Estoy otorgando permisos equivocados?


Mil gracias

Preguntas similares