Sur II7, nous hébergeons une API basée sur WCF/asp.net. Afin de permettre aux utilisateurs d'une application ASP classique de se connecter à l'API, nous avons dû publier une version que nous appelons "transport". Cette version de Transport est écrite dans asp.net aussi, elle pointe vers le même assemblage, c'est juste la couche de sécurité qui est différente pour permettre à l'ASP classique de s'authentifier. La sécurité au niveau du transport est utilisée par opposition à la sécurité basée sur les messages. Lorsque vous utilisez un navigateur pour charger la référence de service, je peux charger la page svcutil.exe ... WDSL.Classic asp "Une erreur s'est produite lors de la vérification de la sécurité du message." iis7 transport level security
Lorsque vous utilisez mon test page asp pour appeler une méthode web à partir de cette référence, je reçois le texte suivant retourné:
appeler fini Service Web. État = Erreur interne du serveur ResponseText = a: InvalidSecurity Une erreur s'est produite lors de la vérification de la sécurité du message.
Ceci suggère que l'authentification a échoué. Lors d'un test utilisant asp.net ou l'application tempête WCF pour contacter l'API normale, tout fonctionne bien. L'API a été récemment migrée, il semblerait que quelque chose n'a pas été configuré correctement mais je ne peux pas expliquer quoi.
Je peux naviguer vers la référence de service svcutil.exe ... WDSL, en le sélectionnant via le navigateur, j'obtiens la réponse XML attendue. Le NOM UTILISATEUR et le mot de passe utilisés fonctionnent lorsque vous utilisez la publication ASP non classique de l'API en utilisant le message basé sur la sécurité.
Serait-il possible de poster un conseil de dépannage qui pourrait aider à diagnostiquer le problème, en particulier en ce qui concerne la détection et la configuration de la sécurité au niveau du transport?
Merci Scott
RÉVISÉ POUR AJOUTER LA MISE A JOUR SUIVANT:
a tenté d'utiliser la valeur par défaut App piscine et une nouvelle application de piscine, mais même problème persiste.
Erreur de page de test: ResponseText = a: InvalidSecurity Une erreur s'est produite lors de la vérification de la sécurité du message.
IIS LOG montre: v3/Transport/testclassicasptransportwcfservice.asp (200 0 0) (c.-à-IIs 200) /V3/Transport/DeviceService.svc/DeviceService (500 0 0) (c.-à-iis erreur 500)
note: répertoire virtuel défini sur TRANSPORT et V3. V3 fonctionne bien en utilisant .net par opposition à asp classique pour authentifier. L'initialisation du cache permanent du modèle a échoué pour le pool d'applications 'transport' en raison de l'erreur suivante: Impossible de créer un sous-répertoire de cache disque pour le pool d'applications. Les données peuvent avoir des codes d'erreur supplémentaires.
Cette référence semble suggérer un correctif mais de nombreux chemins et références DIR dans "appcmd" n'existent pas.
_http: //theether.net/kb/100127