Probléme ecritures fichiers / reseau

Signaler
Messages postés
3
Date d'inscription
vendredi 22 avril 2005
Statut
Membre
Dernière intervention
14 juin 2007
-
Messages postés
2
Date d'inscription
jeudi 14 juin 2007
Statut
Membre
Dernière intervention
22 juin 2007
-
Bonjour ,


Voila mon souci ,


J'ai une application console en C# qui doit ecrire des fichiers ....
Ces fichiers sont ecrits sur un autre serveur.
Chemin du genre : [file://\\serveur\dossier \\serveur\dossier] ...


si j'execute l'application sur mon poste pas de probleme.
si j'execute l'application sur le serveur en me connectant en terminal serveur
la aussi pas de soucis


Par contre si je place l'application sur le serveur et que je veux l'executer
de mon poste :aie:
via la chemin reseau ca plante : [file://\\serveur\dossier\appl.exe \\serveur\dossier\appl.exe]


Et malheureusement c'est comme ca qu'il doit tourner car c'est un job sql ce trouvant sur un autre serveur qui va la lancer ...


Voila l'erreur qui est retourné sur le StreamWriter qui excrit le fichier :



Échec de la demande d'autorisation de type 'System.Web.AspNetHostingPermission, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.


J'ai vu qu'il y avait peut être des changements à faire sur le Code Access Security mais je vois pas trop ...


Merci d'avance pour vos réponses




Cordialement


Baptiste
 

6 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
Salut,

Essaie de modifier le niveau de confiance de la zone "Intranet" en FullTrust via l'outil mscorcfg.msc pour voir si ca peut résoudre ton problème

Mx
MVP C# 
Messages postés
3
Date d'inscription
vendredi 22 avril 2005
Statut
Membre
Dernière intervention
14 juin 2007

Merci mais ... non ca ne change rien .
Enfin si je me suis pas trompé :

Dans mscorcfg.msc :

Groupes de codes
    -All_Code
          -LocalIntranet_Zone -> jeu d'autorisations --> jeu d'autorisations : FullTrust

Je ne peux toujours pas lancer l'executable via un chemin reseau

Merci d'avance

Si tu as une autre idée n'hesite pas

Cordialement

Baptiste
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Modérateur
Dernière intervention
30 octobre 2008
54
En fait, je viens de preter attention a l'erreur

'System.Web.AspNetHostingPermission'

Bizarre une erreur System.Web en Winform. Tu sais ce qui pourrait lever cette exception dans ton code ?

Mx
MVP C# 
Messages postés
3
Date d'inscription
vendredi 22 avril 2005
Statut
Membre
Dernière intervention
14 juin 2007

En faite j'avais pas fait attention mais ca plante à plusieurs emplacements.

J'ai rajouté un envoie de mail donc ca plante sur  :

System.web.Mail :

Échec de la demande d'autorisation de type
'System.Web.AspNetHostingPermission, System, Version=2.0.0.0,
Culture=neutral, PublicKeyToken=b77a5c561934e089'.

Mais si j'enléve l'envoie de mail ca plante bien sur :

Échec de la demande d'autorisation de type 'System.Security.Permissions.FileIOPermission, mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'.

il n'aime pas l'execution reseau , peut être je doit utiliser  d'autres classes ?

Merci d'avance

Baptiste
Messages postés
2
Date d'inscription
jeudi 14 juin 2007
Statut
Membre
Dernière intervention
22 juin 2007

tu es sur qu'il fonctionne correctement sur ton serveur? car le probleme d'IO ne doit pas etre relatif au réseau normalement ,.
cependant essaie de placer ton assembly dans le GAC s'il n'y est pas, cela marche peut etre sur ton serveur car par défaut les assemblys présent sur le system ont tous les droits(considérés comme importé volontairement), cependant l'execution via le reseau ne correpond pas a cette configuration puisque cette fois tu l'execute a partir ou sur une machine distante, le placer dans le GAC résoudra peut etre ton probleme, puisqu'a priori depuis le framework 2.0 les assembly présent dans le cache n'ont visiblement plus de restriction.

je sais pas trop si ca pourra t'aider j'avais regardé un peu ces histoires de sécu pour un projet d'application. mais essaie quand meme si ce n'est pas le cas de le placer dans el cache sur les deux machines

bon courage ;)
Messages postés
2
Date d'inscription
jeudi 14 juin 2007
Statut
Membre
Dernière intervention
22 juin 2007

dsl petit oubli de ma part, la zone de confiance intranet local ne donne pas d'autorisation d'E/S, il ne te servira a rien de le placer dedans,
**pour le verifier==>regarde les jeux de permissions du groupe de code, il n'y a pas permission E/S, eventuellement rajoute le au groupe de code** cependant je ne vois pas pour l'erreur d'AspNethostingpermission. si le GAC ne marche pas il ne te reste plus qu'a fouiller pour trouver a quelle type de permission cela correspond.