Servicio de windows y permisos
#1
Escrito 27 enero 2009 - 07:23
Hola.
Esto de los servicios es nuevo para mí, no los he trasteado nada. Pero como nunca es tarde me he creado un servicio.
El servicio tiene que leer unos datos de una tabla de mi base de datos. Si mi base de datos está en local, todo perfecto conecta perfectamente, pero cuando la conexión es remota no funciona.
Supongo que el problema serán los permisos.
El servicio me lo crea con el usuario SYSTEM, me digo, pues no tendrá permisos para acceder al servidor. Ahora yo, toda chula, cambio el usuario al mío que tengo permiso para todo. Desde el panel de servicios, selecciono el servicio y en propiedades-->Inicio de sesión --> Iniciar sesión como... Coloco mi cuenta y contraseña. Reinicio y .... ahora ni me funciona el servicio
No sé que me pasa, alguna sugerencia...
Un saludo.
#2
Escrito 27 enero 2009 - 08:10
If ServiceType is stWin32, ServiceStartName is the account name (in the form "DomainName\Username") which the service process is logged on as when it runs. If the account belongs to the built-in domain, ".\Username" can be specified. If the service application includes more than one service, leave ServiceStartName blank, and leave the Password property blank.
en Español para los que cuidan su salud
Si ServiceType es stWin32, ServiceStartName es el nombre de cuenta (en la forma "DomainName\Username") que se le da al proceso del servicio cuando este se ejecuta. Si la cuenta pertenece al dominio "built-in", puede ser especificado de la manera ".\Username". Si la aplicación de servicio incluye más que un servicio, ServiceStartName puede quedar en blanco, y propiedad de Contraseña en blanco.
#3
Escrito 28 enero 2009 - 03:27
Gracias eduardo.
Si ServiceType es stWin32, ServiceStartName es el nombre de cuenta (en la forma "DomainName\Username") que se le da al proceso del servicio cuando este se ejecuta. Si la cuenta pertenece al dominio "built-in", puede ser especificado de la manera ".\Username". Si la aplicación de servicio incluye más que un servicio, ServiceStartName puede quedar en blanco, y propiedad de Contraseña en blanco.
De hecho cuando cambio el servicio a mi usuario, automáticamente el usuario del servicio se queda de este modo ".\Username" .
No entiendo porque cuando cambio a mi usuario (tengo permisos de administrador) el servicio se inicia, veo que está en ejecución pero no hace nada
Como no he conseguido de ninguna de las maneras conectarme por mi servicio a la bd en red (uso FireBird). Lo que he hecho es dentro de mi servicio de windows llamar a otro programa hecho en delphi para que me haga la conexión. Y me hace exactamente lo mismo, en local me conecta, en red nada de nada. No entiendo nada, ejecuto el exe directamente en mi pc y conecto perfectamente tanto en local, como en red. No sé por qué al utilizar el servicio no puedo conectar. El mensaje de error que dá es el siguiente:
"Error: Unable to complete network request to host '192.168.0.250'. Failed to establish a connection.
Acceso denegado. "
Se os ocurre algo
#4
Escrito 28 enero 2009 - 07:11
#5
Escrito 29 enero 2009 - 01:29
Si. Lo tiene abierto.
No sé estoy dándole vueltas, tiene que ser alguna tontería, a ver si doy con ella.
Gracias
#6
Escrito 29 enero 2009 - 05:11
Otra vez yo :$
Me he dado cuenta que si me conecta a la BD lo que no me deja realmente es abrir la BD.
El servidor es windows 2000 y yo estoy en windows XP. En el servidor tengo una carpeta que es donde tengo todas mis bases de datos. Por si es algún tema de permisos, lo que he hecho es que a esa carpeta darle a todos los usuarios 'Control total' para ver si así me dejaba abrir la base de datos y ni por esas.
Estoy perdida porque directamente ejecuto 'exe' y funciona, pero es llamar a ese 'exe' desde un servicio de windows y no me abre la BD
#7
Escrito 29 enero 2009 - 06:38
Bueno ya dejando de pensar en cosas subrrealistas , has hecho un break point y depurado paso a paso a ver que instrucciones realmente estas enviando??
#8
Escrito 29 enero 2009 - 07:39
no estoy muy puesto en esto de los windows servers y servicios, pero se me ocurre otra idea, no te has fijado si entra las restricciones del firewall del server pueda haber una restriccion que diga que no se pueden conectar usuarios anonimos? esto lo digo pensando que el servicio lo ejecute un usuario no del dominio y pueda ser considerado como anonimo y no darle acceso?
Revisado. Aparentemente no tengo ninguna restricción.
Bueno ya dejando de pensar en cosas subrrealistas ,
No te procuepes que la experta en subrrealismo soy yo, lo que no me pase a mí no le pasa nadie
has hecho un break point y depurado paso a paso a ver que instrucciones realmente estas enviando??
No he hecho un break point porque es un exe. Pero si que he ido poniendo mensajes para ver donde exactamente salta el error y es justo al hacer el Open de la base de datos ( fDM.BD.open; )
Necesito que cada cierto tiempo mi programa lea de una de base de datos y haga ciertas cosas en la máquina.
Solución: Paso de utilizar los servicios de windows. Al arrancar windows hago que ejecute mi programa que funciona perfectamente.
No quería esta solución porque no quería tener todo el rato mi programa en ejecución, pero temo que será así.
Mil gracias por tu tiempo. Un saludo
#9
Escrito 29 enero 2009 - 07:56
#10
Escrito 29 enero 2009 - 08:10
Mi código en delphi , antes he hecho la conexión (connect) a la BD sin problemas, pero al hacer esto:
try fDM.BD.Open; Result := True; except on E:EIBError do begin ShowMessage('Error:' + E.Message ); Result := False; end; end;
Salta el error:
El mensaje de error que dá es el siguiente:
"Error: Unable to complete network request to host '192.168.0.250'. Failed to establish a connection.
Acceso denegado. "
8-)
#11
Escrito 29 enero 2009 - 08:12
#12
Escrito 29 enero 2009 - 09:47
Y no has pensado usar mejor un WebService para solucionar tu problemática, en lugar de mantener la conectividad de la red en el exe, la tienes en el webservice.
Salud OS
#13
Escrito 30 enero 2009 - 03:35
Hola Eliseo,
No había pensado usar WebService :^)
Si tengo tiempo (voy un poco pillada ) si me convence, lo implementaré.
Gracias
#14
Escrito 31 enero 2009 - 08:12
Hola Eliseo,
No había pensado usar WebService :^)
Si tengo tiempo (voy un poco pillada ) si me convence, lo implementaré.
Gracias
Hola Ayla
Ojala y tuvieses tiempo de analizalo, de cualquier forma mira este enlace que nos proporcionó nuestro amigo poliburro
Salud OS
#15
Escrito 02 febrero 2009 - 01:26
Gracias lo miraré