2010-06-17 14 views
5

Mi aplicación necesita acceder a archivos en una máquina remota que requiere un nombre de usuario y contraseña para acceder a ella.Directorio en otra máquina: credenciales de inicio de sesión

Estoy tratando de averiguar si existe un directorio (usando Directory.Exists) para verificar que puedo hacer la 'conexión.

¿Existe alguna manera de proporcionar el nombre de usuario y la contraseña cuando se trabaja con directorios remotos? Actualmente Exists devuelve falso.

Cheers,

+0

completo ejemplo de trabajo simplificado aquí: http://stackoverflow.com/a/17217167 –

Respuesta

3

Desafortunadamente no. Tendrá que ajustar su código con un código adicional para manejar la suplantación de un usuario que sí tiene acceso.

This article explica cómo hacerlo en el código más abajo en la página.

+0

1 excelente enlace. – slugster

+0

Esto es ahora un enlace muerto. – Cylindric

+0

He actualizado el enlace para que apunte al nuevo artículo de soporte. – starskythehutch

1

Utilice la API LogonUser para iniciar sesión como un usuario específico y obtenga un token y luego utilice ese token con WindowsIdentity.Impersonate.

Enlace con un sample. (lea toda la publicación para ver sus problemas de seguridad, etc.).

1

Echa un vistazo a este thread on MSDN Forums.

Tiene un ejemplo de código para usar la suplantación, y también explica un poco sobre el uso de NetUseAdd para obtener acceso si las máquinas están en dominios diferentes o no dominios.

Cuestiones relacionadas