Tomcat Valve: Difference between revisions

From RavenWiki
Jump to navigationJump to search
(added tomcat 7)
(minor edit to tomcat7)
Line 26: Line 26:
=Tomcat 7=
=Tomcat 7=
These instructions are for Ubuntu/Debian and tomcat7
These instructions are for Ubuntu/Debian and tomcat7
* Add ravenvalve.jar to your java path e.g. $TOMCAT/lib
* Add ravenvalve.jar to your java path e.g. $CATALINA_HOME/lib (this is actually in the application specific java path)
* Symlink commons-codec.jar and commons-logging.jar into $TOMCAT/lib from /usr/share/java/ (install libcommons-logging-java and libcommons-codec-java if necessary)
* Symlink commons-codec.jar and commons-logging.jar into $CATALINA_HOME/lib from /usr/share/java/ (install libcommons-logging-java and libcommons-codec-java if necessary)
* Install [https://raven.cam.ac.uk/project/keys/ pubkey2.crt] into $TOMCAT/conf and rename to raven_pubkey.crt
* Download [https://raven.cam.ac.uk/project/keys/ pubkey2.crt] into $CATALINA_HOME/conf and rename to raven_pubkey.crt
* Modify $TOMCAT/conf/server.xml to add the following to the relevant Engine
* Modify $TOMCAT/conf/server.xml to add the following to the relevant Engine
<pre><nowiki>
<pre><nowiki>

Revision as of 19:01, 10 March 2014

William Billingsley ( whb21 at cam.ac.uk) has written a Raven valve for Tomcat based on the Raven Java Toolkit. It is available as Java source, in a .jar archive packed with a copy of the toolkit and as a github project.

He writes:

"I had to write this quickly for one of our servers. I'm sending it to the list because presumably others might need one too, and when I emailed Jon Warbrick in September he didn't have one. Alpha quality, but seems to work for me.
"source and jar attached. JAR also includes the webauth toolkit classes from the Raven project site so you can just drop it into server/lib and configure the valve in server.xml
"works for Tomcat 5.5, probably won't work for older Tomcat versions".

The valve is distributed under the terms of the GNU Lesser General Public License.

See also Java Toolkit, Servlet filter, Tomcat authenticator and JAAS implementation and JAVA Servlet Library.

Installation

These instructions are for Ubuntu/Debian and tomcat6, alteration may be required for other OSes/tomcat versions

  • Add webauth.jar and webauth-tomcat.jar to /usr/share/tomcat6/lib/ probably by symlinking to the jar which is stored somewhere more sensible like /usr/local/share/java/ or if you have done pom to deb conversion (untested) then they should be in /usr/share/java/.
  • Symlink commons-codec.jar and commons-logging.jar into /usr/share/tomcat6/lib/ from /usr/share/java/ (install libcommons-logging-java and libcommons-codec-java if necessary)
  • Install raven_pubkey.crt into /etc/tomcat6/
  • Modify /etc/tomcat6/server.xml to add the following to the relevant Engine
      <!-- Use the raven valve to restrict access -->
      <Valve className="uk.ac.cam.ucs.webauth.tomcat.RavenValve"/>

Tomcat 7

These instructions are for Ubuntu/Debian and tomcat7

  • Add ravenvalve.jar to your java path e.g. $CATALINA_HOME/lib (this is actually in the application specific java path)
  • Symlink commons-codec.jar and commons-logging.jar into $CATALINA_HOME/lib from /usr/share/java/ (install libcommons-logging-java and libcommons-codec-java if necessary)
  • Download pubkey2.crt into $CATALINA_HOME/conf and rename to raven_pubkey.crt
  • Modify $TOMCAT/conf/server.xml to add the following to the relevant Engine
      <!-- Use the raven valve to restrict access -->
      <Valve className="cam.cl.raven.RavenValve"/>