3.61. <AuthBy SOAP>

This module handles authentication and accounting by sending it to a remote RADIUS server over TCP using the SOAP protocol. Each RADIUS request is transformed into a SOAP request, which is sent by HTTP or HTTPS to a remote SOAP server. The Remote SOAP server can be any implementation, but example SOAP server code is provided with Radiator.
AuthBy SOAP can be useful in order to tunnel RADIUS requests through ports 80 or 443 in a firewall, where UDP port 1645 is not permitted thought the firewall. It can also be used to improve reliability in some environments by using TCP rather than UDP. And RADIUS security can be improved by using HTTPS as the transport protocol, which will encrypt all the contents of the RADIUS request. Requires the SOAP::Lite Perl module and its prerequisites.
AuthBy SOAP uses a simple SOAP interface. An example Web Service Description Language file (goodies/soaprequest.wsdl) is provided for people wishing to implement their own SOAP RADIUS client.
Included with Radiator is a sample SOAP server CGI script and a SOAP handler module. The file goodies/soapradius.cgi receives SOAP radius requests as sent by AuthBy SOAP and invokes Radius::SOAPRequest::radius(), which is provided by Radius/SOAPRequest.pm. SOAPRequest transforms incoming SOAP requests into standard RADIUS requests and sends them to a RADIUS server. The RADIUS reply is sent back to AuthBy SOAP as the SOAP reply. In order to install the SOAP server, you will need to edit SOAPRequest.pm and specify the location of your RADIUS dictionary, and the address and port of the destination RADIUS server. The address defaults to localhost: 1647. You must also install soapradius.cgi in a suitable location in your web server's CGI directory. You may also need to edit soapradius.cgi if your Radiator per modules are not installed in the usual place.
See goodies/soap.cfg for an example configuration file.

3.61.1. Endpoint

With this parameter, you can specify any number of SOAP proxy points. AuthBy SOAP will try to contact each one in turn until the SOAP call succeeds in getting a reply. Defaults to http://localhost/cgi-bin/soapradius.cgi.
Endpoint https://your.server.com/cgi-bin/soapradius.cgi

3.61.2. URI

This parameter specifies the SOAP URI that AuthBy SOAP will try to run. This is not a URL. It is used by the server to deduce the right SOAP module to load. You should not need to change this. Defaults to http://www.open.com.au/Radius/SOAPRequest.

3.61.3. SOAPTrace

This enables some or all of the SOAP::Lite internal tracing. Allowable values are
  • transport
  • dispatch
  • result
  • parameters
  • headers
  • objects
  • method
  • fault
  • freeform
  • trace
  • debug
  • all
or any combination. Defaults to no tracing. Tracing is printed to STDOUT.
SOAPTrace all

3.61.4. Timeout

With this optional parameter, you can control how long to wait for the SOAP reply from the SOAP server. Time is in seconds. Defaults to 3 seconds.