ckanext-googleauth
CKAN extension for use Google as authentication authority.
This extension allow users to authenticate in CKAN using their google account. Optionally, it’s possible to filter users by google domain.
At the first access, the extension create a new user in CKAN with strong and complex password and username calculated from email address, substituting every non alphanumerical character with underscore “_”.
For example: ‘name.surname@domain.it’ -> ‘name_surname_domain_it’.
If ckan.googleauth_omit_domain_from_username is set (see “Config Settings” section) the domain will be stripped from the username.
For example: ‘name.surname@domain.it’ -> ‘name_surname’.
Requirements
ckanext-googleauth was created and tested in CKAN 2.5.1; it was also tested in CKAN 2.4.1. The functioning with other versions of CKAN is not guaranteed.
To use this extension you must register your application with Google to obtaining authorization credentials. For more information please visit https://developers.google.com/identity/sign-in/web/devconsole-project
Installation
To install ckanext-googleauth:
Download ckanext-googleauth.zip from here (https://github.com/yacme/ckanext-googleauth/releases/download/1.0.0/ckanext-googleauth.zip) and uncompress it in /usr/lib/ckan/default/src.
Entry into /usr/lib/ckan/default/src/ckanext-googleauth.
Execute:
python setup.py install
Configure Client ID and (optionally) Hosted Domain (See “Config Settings” section)
Add googleauth to the ckan.plugins setting in your CKAN config file (by default the config file is located at
/etc/ckan/default/production.ini).
Restart CKAN.
Config Settings
In your config file (/etc/ckan/default/production.ini) add these properties:
ckan.googleauth_clientid = client_id_value (REQUIRED). It contains the Client ID. For more information on how to create Client ID please visit https://developers.google.com/identity/sign-in/web/devc