Dans un programme VB.NET, je souhaite lire les fichiers d'un système de fichiers, puis écrire une version compressée de ces fichiers dans un partage de fichiers sécurisé et distant, en utilisant des informations d'identification différentes.Est-ce que je peux programmer un "net use" sur un partage de fichiers?
L'opération analogue à l'invite de cmd est:
net use s: \\server\share /user:foo [email protected]
copy a+b | compress > s:\foo.bin
net use s: /delete
Est-ce possible? Comment? (Ne vous inquiétez pas de la compression et de l'entrée/sortie du fichier, je m'intéresse aux composants de sécurité.)
Est-ce que je le fais avec WindowsImpersonationContext
?
EDIT: vous avez raison, je ne veux pas vraiment mapper un lecteur; ce que je veux faire est d'accéder à un partage avec des informations d'identification qui ne sont pas les informations d'identification par défaut. L'application est exécutée par toutes sortes d'utilisateurs et ne dispose pas d'un accès en écriture au partage normalement. Juste pour les besoins de ce fichier unique, je veux permettre aux utilisateurs d'écrire sur le partage.
Alors, comment écrire un seul fichier sur un partage, en utilisant d'autres informations d'identification? Gardez à l'esprit que j'ai besoin des informations d'identification par défaut ou de l'identité pour lire les fichiers qui agissent en entrée de la compression.
UserX reads files a1 and b1 as UserX, writes file c1 as UserA
UserY reads files a2 and b2 as UserY, writes file c2 as UserA
Est-ce logique? Je sais que je peux créer directement un fichier sur un partage. La question est de savoir comment faire avec des informations d'identification alternatives? Je sais comment passer des alt creds lors de la création d'un partage, c'est pourquoi j'ai introduit l'idée de créer un partage. Je n'ai pas vraiment besoin de partager, car il est fait seulement pour un seul fichier, et seulement dans un programme.
Et je sais que je pourrais d'abord créer le fichier, puis copier le fichier sur le partage. Je ne veux pas faire ça parce que c'est un gros fichier et j'aimerais le diffuser une fois.
Je copier les fichiers directement sur \\ server \ share \ myfile.text plutôt que la cartographie \\ serveur \ partage à s: puis copie vers s: myfile.text. Si ce n'est pas pour une autre raison, mais que vous êtes en train d'invoquer des problèmes de configuration de l'utilisateur (déjà maquillé? Et si quelque chose échoue avant de vous déconnecter?) –