Foros del Web » Programando para Internet » ASP Clásico »

Acceso a carpetas del servidor con contraseña

Estas en el tema de Acceso a carpetas del servidor con contraseña en el foro de ASP Clásico en Foros del Web. Hola amig@s! Tengo la siguiente cuestión: Necesito acceder a una carpeta en el servidor con un usuario diferente al que está logueado en el equipo ...
  #1 (permalink)  
Antiguo 10/03/2010, 08:29
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 20 años, 3 meses
Puntos: 2
Acceso a carpetas del servidor con contraseña

Hola amig@s!
Tengo la siguiente cuestión: Necesito acceder a una carpeta en el servidor con un usuario diferente al que está logueado en el equipo local, para copiar archivos a otro servidor.

Intenté hacerlo utilizando WshNet de Wscript para mapear dicha carpeta como una unidad de red, pero no lo he conseguido. Mi primer intento busca en una unidad de red mapeada y coloca el archivo en el disco local, en la máquina donde trabajo (que tiene permiso a la carpeta del servidor) funciona, pero en otra, si bien no da errores, no copia ningún archivo.

Obviamente, en las dos pc existe la carpeta local de destino, esto es lo que tengo:

Código:
' VB Document
Dim WshNet, WshShell, fso, Unidades_de_red, perfil
'Creación del objeto red, el objetoy shell y el acceso a la estructura de ficheros
Set WshNet = Wscript.CreateObject("WScript.Network")
Set WshShell = WScript.CreateObject("WScript.Shell")
Set fso = WScript.CreateObject("Scripting.FileSystemObject")
num1="M:"
num2="N:"
ruta="\\SERVER\WEB"
destino="C:\upload\"
usuario="veronica"
password="vero@2010"
Rucarpe=num1&"\UnidadPrivada\"

'Libera unidades en uso
For i=1 to 2
On Error Resume Next
WshNet.RemoveNetworkDrive num&i , True
Next
'Nueva Unidad
WshNet.MapNetworkDrive num1 , ruta, False, usuario, password
Set carpeta=fso.GetFolder(Rucarpe)
Set archivos=carpeta.Files
for Each File in archivos
    Elarch=fso.GetFile(File)
    Copiara=fso.GetFileName(File)
    fso.CopyFile Elarch, destino&"\"&Copiara
    'Mostramos qué archivo se copió para ver que carajo dice
    msgbox "Archivo que se copió: "&Copiara, vbInformation + vbOkOnly

Next

'Liberamos la memoria
Set WshNet = Nothing
Set WshShell = Nothing
Set fso = Nothing
Set Unidades_de_red = Nothing

WScript.Quit()
Será posible abrir una carpeta enviando usuario y contraseña utilizando fso??? Leí unos cuantos manuales pero ninguno especifica cómo trabajar si es, por ejemplo, una carpeta protegida por contraseña, o con permisos restringidos.

El hecho es que necesito que un usuario copie los archivos de un sitio a otro, sin tener acceso a los archivos originales. De esta manera, la aplicación copia los orígenes en otra carpeta, y de ahí el usuario puede modificarlos, sin posibilidad de acceder a los originales.

Hay creado un usuario especialmente para la aplicación, que es el único que tiene acceso a los archivos originales en el servidor.
__________________
Why can't we not be sober?
www.partitorium.com.ar
  #2 (permalink)  
Antiguo 12/03/2010, 21:20
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 21 años, 2 meses
Puntos: 27
Respuesta: Acceso a carpetas del servidor con contraseña

ummmmmm
destino es C:\upload\

es destino siempre en la carpeta en donde se ejecuta el asp
si es en tu maquina busca ese directorio
si es la aplicacion corre en el server
el destino sera el c: del server

porque el destino siempre sera la ruta en donde se ejecuta el asp

si quieres copiarlo a la pc del cliente y esa en la misma red
podrias usar
\\192.x.x.x\c$\destino
pero esa capeta tendria que tener permiso para escribir el usuario IIUS_maquinadondeseejecutaelasp

eso entre otras condiciones.

suerte
__________________
JuanRa Pérez
San Salvador, El Salvador
  #3 (permalink)  
Antiguo 16/03/2010, 07:36
Avatar de verinchi  
Fecha de Ingreso: septiembre-2004
Ubicación: Buenos Aires
Mensajes: 647
Antigüedad: 20 años, 3 meses
Puntos: 2
Respuesta: Acceso a carpetas del servidor con contraseña

Hola Juanra, gracias por tu respuesta.

Mirá, ese es el problema y por eso estoy intentando con WshNet iniciar sesiones de red en el servidor, con un usuario distinto al que está logueado en la máquina, que no tiene permiso de escritura en la carpeta.
Inicialmente, lo hice en una carpeta del server contra la local, para probar si puedo, enviando el usuario y pass, copiar el archivo. Una vez que logre la sesión de red en el server, deberé iniciar otra en otro servidor para guardar el archivo en cuestión. De todas maneras, creo que en el server de destino el usuario tendrá permiso de escritura, con lo que se hace más simple y el problema radica en iniciar una sesión en el server origen para copiar el archivo.
__________________
Why can't we not be sober?
www.partitorium.com.ar

Etiquetas: carpetas, contraseña, servidores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:06.