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.

Preguntas similare

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.
Respuesta Responder a este mensaje
#2 Cristo
14/09/2006 - 14:46 | Informe spam
Muchas gracias, podrías decirme que es exactamente los BOL ("los libros en
pantalla"??)

"Carlos Sacristán" wrote:

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.



Respuesta Responder a este mensaje
#3 Carlos Sacristán
14/09/2006 - 14:53 | Informe spam
Sí. "BOL" es Books On Line -> Libros En Pantalla. La ayuda en línea,
vamos...

Es que decir "LEP" no queda muy bien ;-)


Un saludo

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

"Cristo" escribió en el mensaje
news:
Muchas gracias, podrías decirme que es exactamente los BOL ("los libros en
pantalla"??)

"Carlos Sacristán" wrote:

> 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.
>
>
>
Respuesta Responder a este mensaje
#4 Cristo
14/09/2006 - 15:31 | Informe spam
Perdón por las molestias, Los Libros en Pantalla los habíamos consultado
antes de escribir en este foro, el código que ponemos es:

exec master..xp_sqlagent_proxy_account N'SET', N'MiDominio',
N'UsuarioAdministrador', N'ContraseñaAdministrador'
exec master..xp_cmdshell 'Ruta del Ejecutable'

Y el error sigue siendo el mismo, actualmente hemos quitado la tilde de la
cuenta "No SysAdmin de Proxy", hemos colocado los permisos de ejecución de
los dos procedimientos almacenados de la BD Master para todos los usuarios.

"Carlos Sacristán" wrote:

Sí. "BOL" es Books On Line -> Libros En Pantalla. La ayuda en línea,
vamos...

Es que decir "LEP" no queda muy bien ;-)


Un saludo

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

"Cristo" escribió en el mensaje
news:
> Muchas gracias, podrías decirme que es exactamente los BOL ("los libros en
> pantalla"??)
>
> "Carlos Sacristán" wrote:
>
> > 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.
> >
> >
> >



Respuesta Responder a este mensaje
#5 Isaias
14/09/2006 - 19:07 | Informe spam
Con el permiso de Carlos

Cristo, consulta esta liga:

http://www.novicksoftware.com/Artic...l-Woes.htm

Saludos
IIslas


"Cristo" wrote:

Perdón por las molestias, Los Libros en Pantalla los habíamos consultado
antes de escribir en este foro, el código que ponemos es:

exec master..xp_sqlagent_proxy_account N'SET', N'MiDominio',
N'UsuarioAdministrador', N'ContraseñaAdministrador'
exec master..xp_cmdshell 'Ruta del Ejecutable'

Y el error sigue siendo el mismo, actualmente hemos quitado la tilde de la
cuenta "No SysAdmin de Proxy", hemos colocado los permisos de ejecución de
los dos procedimientos almacenados de la BD Master para todos los usuarios.

"Carlos Sacristán" wrote:

> Sí. "BOL" es Books On Line -> Libros En Pantalla. La ayuda en línea,
> vamos...
>
> Es que decir "LEP" no queda muy bien ;-)
>
>
> Un saludo
>
> -
> "Sólo sé que no sé nada. " (Sócrates)
>
> "Cristo" escribió en el mensaje
> news:
> > Muchas gracias, podrías decirme que es exactamente los BOL ("los libros en
> > pantalla"??)
> >
> > "Carlos Sacristán" wrote:
> >
> > > 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.
> > >
> > >
> > >
>
>
>
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida