Dll late binded consommant des WebServices

rvblog Messages postés 792 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 12 juin 2012 - 5 oct. 2008 à 21:56
rvblog Messages postés 792 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 12 juin 2012 - 6 oct. 2008 à 23:06
Salut à toutes et à tous,

ça faisait longtemps, et je reviens pour demander un service (pas géné l'autre, m'enfin, j'ai quand même bien cherché avant).
Voilà le contexte :
une application  WinForm sur du XP (le plus souvent, sinon W2K), FM 2.0, qui se connecte à un webservice maison(en http://machin:8093, IIS 6 sur du W2K3, FM 3.0, pool d'appli séparé) (qui, pour l'instant, n'accède qu'à des fichiers xml, pas de BD).
elle charge des plugins maison (late-binding et transtypage d'interfaces) , FM 2.0, qui se connectent à d'autres webservices maison (en http://machin:8095, IIS 6 sur du W2K3, FM 3.0, pool d'appli séparé)(qui accèdent à de la BD Oracle).

L'application est sur un lecteur partagé ([file://\\serveur\partage \\serveur\partage], non mappé, sur du W2K3), les plugins aussi (et les interfaces aussi).
lorsque j'accède (sur du XP, mais sur le poste de développement) à l'appli, via le lecteur réseau, le client fonctionne, se connecte au webservice (celui-ci lui fournit la liste des plugins), elle charge les plugins (toujours via le lecteur réseau), et chacun leur tour, les plugins se connectent à leur(s) webservice(s). Nickel.

Lorsque je fais la même chose, sur un autre poste (mais toujours ), le client démarre, se connecte à son webservice, charge ses plugins, mais eux se voient l'accès au webservice refusé explicitement (dixit le message d'erreur). Si sur le même poste (toujours même user), je tente l'accès aux webservices via IE, ça fonctionne.

Ca a l'air d'un problème de stratégie de sécurité, lié à une dll qui accède à une resource sur un autre serveur, donc je vois 2 voies (sûrement pas les bonnes, sinon je n'écrirais pas, mais ça évitera des échanges qui vous feront perdre du temps):
- le client doit montrer "patte blanche" mieux que çà. J'ai brassé  le caspol, l'impersonnation, les crédentials, en vain (d'autant que les réglages que j'ai trouvés sur le ISS 6 laisse à croire que tout le monde y rentre comme dans un moulin, laisse à croire seulement, parce qu'en l'occurrence, ça le fait pas!)
- ouvrir encore plus le IIS (pas trop de risque, c'est un intranet bien fermé)! oui mais comment? Y a-t-il un admin réseau dans c't'avion? un brave près à secourir un de ces foutus développeurs qui foutent le box sur le réseau, mais qui promettent de faire plus propre la prochaine fois (si, c'est promis, et de prêcher la  bonne parole aussi)?

ou alors la connection DB est détectée, interdite, et alors le message est à côté de la plaque, ou alors j'ai pas "nommé fort" les assemblages (j'ai lu ça quelque part, et je ne sais pas encore bien ce que c'est), ou alors ...

bonne nuit à ceux qui peuvent dormir, à + aux autres, et merci d'avance à celles et ceux qui "sauront".

PS: soyez indulgent(e), je ne débute pas à en développement, mais je débute en .NET.
rvblog<sup>n
Je veux ton bien....et je l'aurais....mieux vaut tard...que trop tard!</sup>

1 réponse

rvblog Messages postés 792 Date d'inscription vendredi 4 mars 2005 Statut Membre Dernière intervention 12 juin 2012 7
6 oct. 2008 à 23:06
Salut à toutes et à tous,

navré pour le dérangement. Ce n'est sûrement pas un problème de sécurité!

J'ai recommencé un plugin vide (juste les interfaces), il a fonctionné sur le poste client.
Je lui ai embarqué le proxy du WebService incriminé, il a fonctionné.
J'ai sollicité une méthode simple du WS (un check fonctionnel), il a fonctionné.
J'ai sollicité sans try/catch une méthode à DataSet, et il a couiné!

donc la seule conclusion pour ce soir : trop de conclusions rapides,... tue la rapidité.

j'ai pas solutionné ce soir, mais au moins, vous savez que ce n'était pas là le problème.

mince, je crois que je vieillis!

rvblog<sup>n
Je veux ton bien....et je l'aurais....mieux vaut tard...que trop tard!</sup>
0
Rejoignez-nous