Using .NET Web Services with Mule
Following are tips for using Mule to communicate with .NET web services.
Authentication and Other Security Features
There are three ways to secure a web service:
-
Via an HTTP web server
-
Via authentication tokens in the SOAP header
-
Via WS-Security
Via an HTTP Web Server
If you are running Mule on a Web App, you can configure the web server to use security by setting security configuration in web.xml
and in the server’s configuration file.
Alternatively, to secure a web service running on Mule (where Mule is the server), you can set the HttpBasicAuthenticationFilter
.
on the web service component. Any call made to the web service would have to pass through the filter that delegates the authentication to Acegi.
Another alternative would be to use HTTPS where certificates are used for authentication.
For more information see Configuring Security.
Using Authentication Tokens in SOAP Headers
You can send authentication tokens through SOAP headers as long as there is an authentication provider established that is able to understand the headers and perform the authentication.
Using WS-Security
If you are using CXF, you can configure a client and service to use WS-Security. For details, see Enabling WS-Security.
Passing Authentication Information to a Web Service
There are three methods for passing authentication information to a web service configured on Mule:
-
Pass them in the URL, such as
http://name:password@localhost:8080/MyService
-
Set the authentication items as properties when using the Mule client
-
Create headers containing the authentication items and send them as properties when using the Mule client