Paul Dixon, CTO, February 22, 2017

If you’re not already familiar with Drupal, the chances are you’ve heard of it.

Drupal is one of the most commonly used open-source content-management frameworks, used by over 1.2 million sites including 71% of the top 100 universities and 73% of the top 30 media companies.

A Drupal plugin has been on our hit list for a while, and so were delighted to have the opportunity to develop one for a recent publishing client.

“It’s now ridiculously simple to enable institutional access controls within Drupal”

Our design objectives were simple:

  1. A few clicks to integrate
  2. No technical knowledge to configure
  3. Plenty of support for implementation testing

Here’s how we achieved them.

1. A few clicks to integrate

Simply download the latest version from our Technical Manual and, in your Drupal admin panel, go to Modules -> Install new module and upload the module file. Go to the Modules listing, and activate the LibLynx Connect module.

2. No technical knowledge to configure

You’ll find LibLynx Connect listed as one of the options with Configuration in your Drupal admin panel.

The current plugin uses URL patterns to identify web pages that contain secured content. This makes it very easy to use on sites where the resources you want to control access to have a well defined URL structure. It is also possible to use other logic, such as using node metadata to drive the authorization decision.

You simply associate a URL pattern with a code representing a set of content using the format PATTERN = CODE – see example below.

You can also fine tune some elements of the authorization, such as a denial page to redirect users, or enabling Drupal users with specific permissions to bypass authentication requirements..

And that’s it. Everything else can be configured via our API and/our web-based admin portal, including:

  • Authentication methods to be applied down to the account level, such as IP ranges, Single Sign On (Shibboleth, OpenAthens), trial codes, referral URL, library cards etc.
  • Authorization logic, including subscriptions, metered access and voucher codes (or none i.e. use LibLynx for authentication only)
  • User models, including complex scenarios where users inherit rights through multiple personal and institutional affiliations, consortial deals etc.
  • Rights models, from large aggregation packages down to the smallest element accessible through a unique URL.

3. Plenty of support for implementation testing

To help developers, the module includes diagnostic logging and an optional diagnostic block to assist with troubleshooting and developing during testing, including a debugging mode with verbose detail. There are also Helper methods to enable other modules to obtain information about the authorization state.

It’s easy for us to extend this plugin to cover additional functionality such as stats tracking and reporting, so let us know if you’ve got a specific use case you’d like to explore.

Want to play with it?

If you’d like to try it for yourself, contact us for access to our online technical manual where you can download the plugin and access a lot more information about integration, and our API functionality in general.

We’d also be happy to explore customizing a plugin to better meet your needs. It’s not hard.