Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   conexion a carpeta con contraseña de usuario (https://www.clubdelphi.com/foros/showthread.php?t=92056)

emeceuy 12-07-2017 03:20:51

conexion a carpeta con contraseña de usuario
 
Hola estimados !

Tengo un problema que por mas que busco información en los foros y en internet, no he conseguido solucionar.

Tengo una aplicación que necesito que acceda a datos que están en una carpeta. El usuario de la PC donde se ejecuta la aplicación, no tiene los permisos para acceder a esa carpeta, y no quiero que los tenga para que no pueda modificarlos "desde afuera" de la aplicación. Sin embargo hay otro usuario que si tiene los permisos (que seria por ejemplo un administrador).

Entonces, existe una forma para habilitar a la aplicación a acceder a los datos de esa carpeta colocando un usuario y la contraseña (con permisos correspondientes) internamente desde la aplicación?

Y mucho mejor aun, hay forma de hacerlo manteniendo la premisa que la que tenga acceso sea únicamente la aplicación pero desde el Windows continúe sin poderse acceder a la carpeta?

Utilizo Delphi XE3.

Espero su ayuda desde ya ! Muchas gracias a todos !

Saludos, Marcelo.

gatosoft 12-07-2017 04:01:31

buen día Marcelo...

Se me ocurre que trabajes con un archivo bat que se ejecute en modo silencioso y a través de éste mueves y administras tus archivos. la idea seria utilizar la funcionalidad "ejecutar como otro usuario", el problema de este comando (RUNAS) es que no acepta que se pasen contraseñas.... pero aqui te dejo un link en el que explican como podria simularse la digitacion de la contraseña del otro usuario.


Editado:
Acabo de dar con unos foros que mencionan la utilidad PsExec que permite hacer este trabajo pasando la contraseña.

Te recuerdo que la idea es que muevas, copies, crees y elimines archivos a través de DOS... la lectura y admon ya la harias desde tu applicacion. Es decir, mueves con el otro usuario los archivos que necesites a una carpeta que tu app pueda leer, allí los editas y los vuelves a pasar al directorio protegido...

saludo,

emeceuy 12-07-2017 05:29:02

Hola Gato ! Gracias por tu respuesta.

Si bien es una solución que podría funcionar la que propones, no creo que funcione en mi caso, porque hay mas de un usuario que accede a los archivos simultaneamente, entonces el hecho de copiar y volver a copiar generaría grandes problemas.

Realmente no hay una manera que la aplicación pueda acceder a una carpeta compartida utilizando un usuario?

Gracias! Marcelo.

mallenat 12-07-2017 08:02:59

Nosotros tenemos un problema similar en la empresa. La solución que usamos es instalar un servidor FTP en el servidor de ficheros. Los usuarios pueden (si se necesita) leer de una carpeta compartida, pero para escribir es necesario enviar el fichero via FTP.

Puede que esta solución hibrida te sirva.

En su dia descartamos la opción de usar CreateProcessAsUser y LogonUser por ser algo complicadas de gestionar.

gatosoft 14-07-2017 17:09:56

Tienes razón en cuanto al manejo de la concurrencia... y la solucion del FTP me parece muy buena, pero no te va a controlar tampo este aspecto. Me refiero a los conflictos en un merge...

El accseso simultaneo a archivos requiere un control como el de los versionadores de codigo, que permiten bloquear , hacer merge o crear branchs.. esto seria practico si tus archivos se mueven bastante y de con concurrencia, pero si son casos especiales la opcion del FTP y una que otra verificacion de la fecha de modificacion, tamaño podrian ayudarte.



saludo,


La franja horaria es GMT +2. Ahora son las 09:10:12.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi