Drupal: Difference between revisions

From RavenWiki
Jump to navigationJump to search
(Attribution for Chris)
No edit summary
Line 1: Line 1:
There are several solutions for adding Raven authentication to the [http://www.drupal.org/ Drupal] content management system:
There are several solutions for adding Raven authentication to the [http://www.drupal.org/ Drupal] content management system:


* Chris Wilkinson from University Information Services (previously from MISD) has written a very nice pair of modules providing raven authentication and lookup functionality in a manner which plays nicely with other modules. Forked from ucamraven module described below, they are currently found on github at [https://github.com/misd-service-development/drupal-raven] and [https://github.com/misd-service-development/drupal-lookup].
== Raven module ==


* Shawn Tan wrote the '''ucamraven''' Drupal module, which was later updated by David Newgas, Aidan Hobson Sayers, and Peter Cowan. It adds [[Raven/Webauth]] authentication to Drupal 6 and 7 (the two Drupal versions have a different module which should be installed).
The latest version of the Raven authentication module for Drupal 7.x can be found on GitHub:
https://github.com/misd-service-development/drupal-raven
 
This is the version used by the University of Cambridge Drupal installation profile. This module was initially forked by Chris Wilkinson from University Information Services from the older ucamraven module listed below.
 
== Other modules ==
 
* A Lookup module is also available, which fills user information from the University Lookup service and integrates well with the Raven module: https://github.com/misd-service-development/drupal-lookup
 
* Shawn Tan wrote the '''ucamraven''' Drupal module, which was later updated by David Newgas, Aidan Hobson Sayers, Peter Cowan and John Kingsnorth. It adds [[Raven/Webauth]] authentication to Drupal 6 and 7 (the two Drupal versions have a different module which should be installed).


* Drupal's [http://drupal.org/project/shib_auth '''shib_auth''' module] can be used with [[Raven/Shibboleth]] and is also supported for Drupal 7. Note that this [https://wiki.aai.niif.hu/index.php?title=DrupalShibbolethReadmeDev#Installation_and_bootstrapping requires Shibboleth SP] to be installed on the Drupal host.
* Drupal's [http://drupal.org/project/shib_auth '''shib_auth''' module] can be used with [[Raven/Shibboleth]] and is also supported for Drupal 7. Note that this [https://wiki.aai.niif.hu/index.php?title=DrupalShibbolethReadmeDev#Installation_and_bootstrapping requires Shibboleth SP] to be installed on the Drupal host.


== ucamraven ==
----
 
=== ucamraven ===


=== Objective ===
==== Objective ====


This Drupal module was created to allow any website that uses Drupal, to authenticate via Raven.
This Drupal module was created to allow any website that uses Drupal, to authenticate via Raven.


=== License ===
==== License ====


This module is released under GPLv2. A copy of the license is included in the module package.
This module is released under GPLv2. A copy of the license is included in the module package.


=== Author ===
==== Author ====


Author's contact information is available in the module source file.
Author's contact information is available in the module source file.
Line 23: Line 34:
----
----


=== ucamraven 7.x ===
==== ucamraven 7.x ====


==== Compatibility ====
===== Compatibility =====


The module was adapted from the 6.x-1.3b version and is deigned to run on 7.x versions of Drupal (tested up to 7.0).
The module was adapted from the 6.x-1.3b version and is deigned to run on 7.x versions of Drupal (tested up to 7.0).


==== Installation, Configuration and Use ====
===== Installation, Configuration and Use =====


See the INSTALL.txt file in the downloaded archive. Available [http://people.pwf.cam.ac.uk/aph40/ucamraven-7.x-0.1-beta-INSTALL.txt here] for convenience.
See the INSTALL.txt file in the downloaded archive. Available [http://people.pwf.cam.ac.uk/aph40/ucamraven-7.x-0.1-beta-INSTALL.txt here] for convenience.


==== Features ====
===== Features =====


In addition to porting the Ucamraven-6.x-1.3b to Drupal 7, a lot of work was put into make the module easier to use - it now comes with a configuration page to allow all the features of 6.x-1.3b to be set up without having to touch any php code, as well as an explanation for each option and sane defaults. No preparatory steps need to be taken before installing the module (unlike with 6.x-1.3b).
In addition to porting the Ucamraven-6.x-1.3b to Drupal 7, a lot of work was put into make the module easier to use - it now comes with a configuration page to allow all the features of 6.x-1.3b to be set up without having to touch any php code, as well as an explanation for each option and sane defaults. No preparatory steps need to be taken before installing the module (unlike with 6.x-1.3b).
Line 39: Line 50:
Additionally, support for manually overriding the institution check for specific users has been added.
Additionally, support for manually overriding the institution check for specific users has been added.


==== Download ====
===== Download =====


[http://people.pwf.cam.ac.uk/aph40/ucamraven-7.x-0.1-beta.tar.gz Ucamraven-7.x-0.1-beta.tar.gz] - Off-wiki link
[http://people.pwf.cam.ac.uk/aph40/ucamraven-7.x-0.1-beta.tar.gz Ucamraven-7.x-0.1-beta.tar.gz] - Off-wiki link
Line 51: Line 62:
----
----


=== ucamraven 6.x ===
==== ucamraven 6.x ====


==== Compatibility ====
===== Compatibility =====


The module runs fine on 6.x versions of Drupal (tested up to 6.16).
The module runs fine on 6.x versions of Drupal (tested up to 6.16).


==== Installation ====
===== Installation =====


'''Update: See the readme file contained in version 1.2 for updated instructions.'''  
'''Update: See the readme file contained in version 1.2 for updated instructions.'''  
Line 71: Line 82:
* Click on admin => menus => navigation. Uncheck the "Log out" item to disable non-raven authentication·
* Click on admin => menus => navigation. Uncheck the "Log out" item to disable non-raven authentication·


==== User login ====
===== User login =====


Any user that clicks on the "raven login" link in the main menu will be redirected to the standard Raven login page. Once the user has authenticated with Raven, the user will be redirected back to the original website.
Any user that clicks on the "raven login" link in the main menu will be redirected to the standard Raven login page. Once the user has authenticated with Raven, the user will be redirected back to the original website.
Line 77: Line 88:
If no user account exists for that CRSID, one will be created.
If no user account exists for that CRSID, one will be created.


==== Admin login ====
===== Admin login =====


The admin account must be a CRSID to log in using the raven system. Administrators with non CRSID account names can only by-pass the Raven login if either: this module is disabled, or the function that overrides "user/login" is disabled (comment out in the .module file).
The admin account must be a CRSID to log in using the raven system. Administrators with non CRSID account names can only by-pass the Raven login if either: this module is disabled, or the function that overrides "user/login" is disabled (comment out in the .module file).
(The override only appears to be available in 1.2, and is opt-in (i.e. it needs uncommenting) - see new install.txt)
(The override only appears to be available in 1.2, and is opt-in (i.e. it needs uncommenting) - see new install.txt)


==== Download ====
===== Download =====


The UCam Raven Drupal module can be downloaded here:
The UCam Raven Drupal module can be downloaded here:

Revision as of 13:17, 17 March 2015

There are several solutions for adding Raven authentication to the Drupal content management system:

Raven module

The latest version of the Raven authentication module for Drupal 7.x can be found on GitHub: https://github.com/misd-service-development/drupal-raven

This is the version used by the University of Cambridge Drupal installation profile. This module was initially forked by Chris Wilkinson from University Information Services from the older ucamraven module listed below.

Other modules

  • Shawn Tan wrote the ucamraven Drupal module, which was later updated by David Newgas, Aidan Hobson Sayers, Peter Cowan and John Kingsnorth. It adds Raven/Webauth authentication to Drupal 6 and 7 (the two Drupal versions have a different module which should be installed).

ucamraven

Objective

This Drupal module was created to allow any website that uses Drupal, to authenticate via Raven.

License

This module is released under GPLv2. A copy of the license is included in the module package.

Author

Author's contact information is available in the module source file.


ucamraven 7.x

Compatibility

The module was adapted from the 6.x-1.3b version and is deigned to run on 7.x versions of Drupal (tested up to 7.0).

Installation, Configuration and Use

See the INSTALL.txt file in the downloaded archive. Available here for convenience.

Features

In addition to porting the Ucamraven-6.x-1.3b to Drupal 7, a lot of work was put into make the module easier to use - it now comes with a configuration page to allow all the features of 6.x-1.3b to be set up without having to touch any php code, as well as an explanation for each option and sane defaults. No preparatory steps need to be taken before installing the module (unlike with 6.x-1.3b).

Additionally, support for manually overriding the institution check for specific users has been added.

Download

Ucamraven-7.x-0.1-beta.tar.gz - Off-wiki link

Note that while testing has been performed on this module and it is currently in use on a live site, there is no guarantee it will work for all Drupal installations.

A security vulnerability has been fixed in this release. Please check the code carefully before upgrading.

Ucamraven-7.x-0.2b.tar.gz - Off-wiki link


ucamraven 6.x

Compatibility

The module runs fine on 6.x versions of Drupal (tested up to 6.16).

Installation

Update: See the readme file contained in version 1.2 for updated instructions.

Un-tar the module into your Drupal's "module" directory. It will be placed in a "ucamraven" sub-directory.

Login as the administrator for your Drupal based site.

  • Go to /user/1/edit and ensure the admin account is a CRSID.
  • Click on admin => modules. Enable the "ucamraven" module.
  • Click on admin => menus => navigation. Uncheck the "Log out" item to disable non-raven authentication·
User login

Any user that clicks on the "raven login" link in the main menu will be redirected to the standard Raven login page. Once the user has authenticated with Raven, the user will be redirected back to the original website.

If no user account exists for that CRSID, one will be created.

Admin login

The admin account must be a CRSID to log in using the raven system. Administrators with non CRSID account names can only by-pass the Raven login if either: this module is disabled, or the function that overrides "user/login" is disabled (comment out in the .module file). (The override only appears to be available in 1.2, and is opt-in (i.e. it needs uncommenting) - see new install.txt)

Download

The UCam Raven Drupal module can be downloaded here: http://raven.cam.ac.uk/project/drupal/files/. The current version is 1.1 (an updated version 1.2 is also available - see below).

An old version for drual 4.6 and 4.7 is also available, however it may suffer from a security vulnerability that was fixed by the 1.0 to 1.1 upgrade of the 6.x version. Use with considerable care.

An updated module with an improved readme, user college checking, redirection for unrecognised colleges and the overriding for the standard login (which did not seem to be implemented?) is also available. Note that college checking cannot check postgraduates as they are a member of their department, not their college. The install.txt file contains some important instructions, so do read it.

Ucamraven-6.x-1.2.tar.gz - Off-wiki link

A slightly modified version of the above plugin sets the Drupal username to be the user's real name from an LDAP search, note that this is optional (See instructions). Instructions are provided but the plugin should be considered a beta at this time as bugs may not have been completely ironed out. Recode at your desire!

Ucamraven-6.x-1.3b.tar - Off-wiki link

A security vulnerability has been fixed in this latest release. Please check the code carefully before upgrading.

Ucamraven-6.x-1.4b.tar.gz - Off-wiki link