SQL2000 Ejecutar XP_CMDSHELL

14/09/2006 - 11:18 por Cristo | Informe spam
Hola,

Necesitamos conseguir que desde un procedimiento almacenado se ejecute un
programa externo (.exe) que realiza unas tareas. Para ello hemos probado con
el "xp_cmdshell", poniéndo y quitándo la opción "non sysadmin..." del
adminitrador, tambièn hemos probado a poner permisos de "sysadmin". Solo
funciona cuando el usuario es "sysadmin". Hemos instalado el SP4 pues
encintramos un artículo referente a este tema y le añadimos antes de la
instrucción "xp_cmdshell" la línea "exec xp_sqlagent_proxy_account". Continúa
fallando. ahora con otro error que pone algo de "xp_cmdshell failed to
execute error 1813 occured while executing logonuserw"
Queremos que el usuario habitual no tenga permisos de administrador ni
nada pues nuestra intención es que la tarea que se ejecute sea propia del
servidor, que no dependa del usuario que accede mediante VisualBasic .NET con
su aplicación cliente.
Además hemos intentado poniéndole a todos los usuarios permisos de
ejecución del "xp_cmdshell" y del "xp_sqlagent_proxy_account".
Me podrían ayudar... Gracias.
 

Leer las respuestas

#1 Carlos Sacristán
14/09/2006 - 12:16 | Informe spam
Si el usuario no es sysadmin, el contexto de seguridad en el que se
ejecuta xp_cmdshell es el de la cuenta del proxy del agente y si éste no
está disponible te dará el error que te está mostrando. Dicha cuenta se
establece con el procedimiento almacenado xp_sqlagent_proxy_account; echa un
vistazo en los BOL acerca de cómo establecer esta cuenta.

Ibas bien encaminado a resolver el problema.


Un saludo

-
"Sólo sé que no sé nada. " (Sócrates)

"Cristo" escribió en el mensaje
news:
Hola,

Necesitamos conseguir que desde un procedimiento almacenado se ejecute


un
programa externo (.exe) que realiza unas tareas. Para ello hemos probado


con
el "xp_cmdshell", poniéndo y quitándo la opción "non sysadmin..." del
adminitrador, tambièn hemos probado a poner permisos de "sysadmin". Solo
funciona cuando el usuario es "sysadmin". Hemos instalado el SP4 pues
encintramos un artículo referente a este tema y le añadimos antes de la
instrucción "xp_cmdshell" la línea "exec xp_sqlagent_proxy_account".


Continúa
fallando. ahora con otro error que pone algo de "xp_cmdshell failed to
execute error 1813 occured while executing logonuserw"
Queremos que el usuario habitual no tenga permisos de administrador ni
nada pues nuestra intención es que la tarea que se ejecute sea propia del
servidor, que no dependa del usuario que accede mediante VisualBasic .NET


con
su aplicación cliente.
Además hemos intentado poniéndole a todos los usuarios permisos de
ejecución del "xp_cmdshell" y del "xp_sqlagent_proxy_account".
Me podrían ayudar... Gracias.

Preguntas similares