Giter Site home page Giter Site logo

tx-vufind-auth's Introduction

Vufind Authentication SSO

This extension enables typo3 to use vufind for frontend user authentication. After logging in into the catalog this extension reads the session-cookie and retrieves all necessary information from the vufind-database to identify an authorized user, assuming the requirements are met.

Requirements

  • vufind >= v2
  • typo3 >= 7.0.0
  • zendframework/zendstdlib >= 3.1
  • vufind-database is mysql
  • vufind-session is stored into database
  • typo3-installation has access to vufind-database
  • a shared cookie-domain

Preparing Typo3

In order for this extension to work we need the zendframework/zend-stdlib classes available. therefore we require an autoloader, that loads this classes for us at

<PATH_site>/Packages/Libraries/autoload.php

Most simply way to provide this is by installing the packages with composer e.g.

COMPOSER_VENDOR_DIR="Packages/Libraries" composer require zendframework/zend-stdlib

Be aware that you have to manually adjust the vendor-dir within the composer.json in order to keep the folder for further installations. if you have a composer-enabled typo3-installation you probably might be fine with the defaults.

Preparing VuFind

Database as Session Storage

VuFind has a simple option to store the session-data into its own database. therefore one has to set the option type on 'Database' in section Session at config.ini and keep the session unencrypted.

[Session]
type = Database
secure = false

Cookie Domain

In order to enable Typo3 to read the vufind-cookie we have to set the cookie-domain to the shared domain value. This is done by the option domain in the Cookies section:

[Cookies]
domain = ".example.edu"

Configuring the extension

It is necessary to configure tx-vufind-auth at the extension manager.

Storage

  • pid = 1: this is the typo3-pag-id where the frontend users and groups are stored

Database

  • host = localhost: the host where vufinds database-server is running
  • port = 3306: the port where vufinds database-server is running
  • name = vufind: the vufind database name
  • user = vufind: the user to connect with to the vufind database
  • pass: the vufind database-user's password

Session

  • cookiename = PHPSESSID: the name of the vufind session cookie
  • lifetime = 3600: the session lifetime (see vufind config.ini, section Session, option lifetime)

tx-vufind-auth's People

Contributors

ndege avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.