web-dev-qa-db-fra.com

Test du service Web avec SoapUI et l'authentification Windows

Est-il possible d'inclure les informations d'identification de domaine Windows pour tester mon service Web avec l'interface utilisateur SOAP?

J'ai trouvé une page de propriétés mais le IIS juste des réponses avec des "mauvais identifiants").

45
Henrik P. Hessel

SoapUI ne semble pas fonctionner directement avec l'authentification NTLM, mais vous pouvez utiliser un proxy tel que Burp Suite pour faire l'authentification pour vous.

  1. Téléchargez Burp Suite depuis http://portswigger.net/burp/ et lancez-le.
  2. Dans l'onglet "Proxy: Interception" de Burp, cliquez sur le bouton pour désactiver l'interception.
  3. Sur l'onglet "Proxy: Options" de Burp, assurez-vous qu'il est défini sur un port inutilisé, la valeur par défaut est 8081
  4. Sur l'onglet "Options" de Burp, cochez "faire l'authentification www" et ajoutez un paramètre pour le serveur que vous souhaitez frapper. Cochez également "Demander les informations d'identification en cas d'échec de l'authentification"
  5. Passez à l'onglet "Proxy: Historique" de Burp pour voir les demandes en cours.
  6. Dans SoapUI, choisissez Fichier> Préférences, puis sélectionnez "Paramètres proxy". Entrez l'hôte "localhost" et le port "8081".
  7. Utilisez SoapUI comme d'habitude. Il enverra des demandes via Burp Proxy, qui effectuera l'authentification NTLM pour vous.
58
Mike Mason

soapUI 4.5 vient d'ajouter la prise en charge de NTLMv2, ce qui élimine le besoin de Burp Suite.

12
MadMoai

La solution acceptée fonctionnera dans la plupart des scénarios. Si, cependant, le service utilise la délégation pour accéder aux ressources sur d'autres serveurs, vous rencontrerez un problème de double saut avec l'authentification NTLM utilisée par le proxy Burp. Le proxy s'authentifiera avec succès auprès du service, mais les appels ultérieurs effectués par le service vers d'autres ressources utilisant la délégation échoueront.

Le problème est bien décrit dans cet article:

http://blogs.msdn.com/b/besidethepoint/archive/2010/05/09/double-hop-authentication-why-ntlm-fails-and-kerberos-works.aspx

La solution de contournement la plus simple que j'ai trouvée pour cela était d'utiliser Fiddler comme proxy. Dans le menu Règles de Fiddler, sélectionnez "Authentification automatique". Mettez ensuite à jour vos préférences SoapUI pour utiliser fiddler comme proxy (l'emplacement par défaut est localhost: 8888). Vos appels seront désormais enveloppés dans des informations d'identification qui peuvent être déléguées.

Si vous utilisez LoadUI pour exécuter vos scénarios de test SoapUI, le programme d'exécution de test SoapUI utilisera vos paramètres de proxy SoapUI et vos appels continueront de fonctionner.

6
kiprainey

La version actuelle SoapUI 4.5.1 ne fonctionne pas avec l'authentification Windows, mais la version de construction nocturne fonctionne à nouveau correctement.

Télécharger la version de construction nocturne

1
Fanda

Je pense que SoapUI pourrait uniquement prendre en charge l'authentification NT pour le WSDL.

vous pouvez voir quelques détails sur la façon dont il est mis en œuvre ici:

(BTW, cette recherche google ne vous semble pas prometteuse !)

1
Colin Pickard