2010-05-17 10 views
1

J'ai une application ASP.NET où l'utilisateur est Anonyme lorsqu'il se connecte au site Web. J'ai aussi un serveur d'impression dans le réseau. Je souhaite laisser cet utilisateur imprimer sur l'imprimante réseau.ASP.NET L'utilisateur anonyme ne peut pas imprimer sur une imprimante réseau

Pour imprimer, je dois utiliser la commande File.Copy. Lorsque je fais cela, je reçois "Accès refusé". J'ai donc essayé d'usurper l'identité de l'utilisateur avec les informations d'identification de l'utilisateur qui est dans le domaine et a les droits d'imprimer sur cette imprimante spécifique.

Le problème est que cet utilisateur doit être administrateur, et je ne peux pas le laisser être l'administrateur. Lorsque cet utilisateur n'est pas administrateur, l'impression ne fonctionne pas ("Accès refusé").

J'ai essayé d'utiliser les informations d'identification réseau, mais je ne sais pas comment définir les informations d'identification pour commander File.Copy. Cette commande ne comporte aucune extension ou surcharge pour les informations d'identification.

Toute aide sera appréciée :)

Répondre

2

Vous devez simplement accorder l'accès en écriture dans le dossier que vous copiez. Cliquez avec le bouton droit sur le dossier et choisissez Propriétés -> Sécurité. Ajoutez ensuite l'utilisateur que vous personnifiez dans asp.net. Vous pouvez faire la même chose pour l'utilisateur anonyme, même si c'est un peu plus compliqué.