Thanks - That worked great. One more question. Is there a way to specifiy that only certain methods within a service need to be authenticated?
For instance given this wsdd: <service name="RS3" provider="java:RPC"> <parameter name="methodName" value="*"/> <parameter name="scope" value="Application"/> <parameter name="className" value="com.vpharm.soap.RS3"/> <parameter name="allowedRoles" value="rs3"/> <requestFlow name="checks"> <handler type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/> <handler type="java:org.apache.axis.handlers.SimpleAuthorizationHandler"/> </requestFlow> </service> Is there a way to specify that the methods getName should use security but getEmail should not? Trevor On Fri, 31 Jan 2003, Keeney, Thomas wrote: > Trevor, > > Here's how you set it up: > > 1) In web.xml, add the following init-param for the AxisServlet. This > enables the provider by adding it as a MessageContext property: > <init-param> > <param-name>use-servlet-security</param-name> > <param-value>1</param-value> > </init-param> > > 2) In web.xml set authentication method to BASIC. (I wanted to use the > ServletSecurityProvider in my web service, but this is where I had the > problem. I had to use FORM authentication, uggh.. If anyone knows how I can > set up Axis Security with FORM authentication, please let me know.) > > 3) In your WSDD (see below), add the Authentication and Authorization > Handlers and set up the roles that are authorized for your web service. > Note that the SimpleAuthenticationHandler looks for a SecurityProvider in > the MessageContext (which you added in Step 1). If it doesn't find it, it > fails back to the SimpleSecurityProvider that authenticates against the > users.lst file. > <service name="urn:xmltoday-delayed-quotes" provider="java:RPC"> > <parameter name="className" value="samples.stock.StockQuoteService"/> > <parameter name="wsdlServicePort" value="GetQuote"/> > <parameter name="allowedMethods" value="*"/> > <parameter name="allowedRoles" value="admin"/> > <requestFlow name="checks"> > <handler > type="java:org.apache.axis.handlers.SimpleAuthenticationHandler"/> > <handler > type="java:org.apache.axis.handlers.SimpleAuthorizationHandler"/> > </requestFlow> > </service> > > 4) Pass the username/password in your client code. > > If you have any more problems, use tcpmon. It helped me figure out alot of > things in Axis. > > Regards, > > Tom > > > > > > -----Original Message----- > From: Trevor Daniel Kramer [mailto:[EMAIL PROTECTED]] > Sent: Friday, January 31, 2003 10:52 AM > To: [EMAIL PROTECTED] > Subject: ServletSecurityProvider > > > The javadoc says > > A ServletSecurityProvider, combined with the ServletAuthenticatedUser > class, allows the standard servlet security mechanisms (isUserInRole(), > etc.) to integrate with Axis' access control mechanism. By utilizing this > class (which the AxisServlet can be configured to do automatically), > authentication and role information will come from your servlet engine. > > But I can't find any instructions on how to set this up. I would like to > use a jdbc realm setup in tomcat to authenticate users to some soap > services. > > Thanks, > > Trevor >