Extension OAuth2 Authentication


Extension Basics

Title
OAuth2 Authentication
Name
ckanext-oauth2
Type
Public extension
Description
OAuth2 authentication support for CKAN enabling single sign-on with external identity providers.
CKAN versions

>=2.2.0 <2.4.0

Show details

These CKAN Versions are exactely matched:

Download-Url (zip)
Download-Url commit date
2024-08-25
Url to repo
Category
Authentication & Security


Background Infos

Description (long)
Show details

The OAuth2 Authentication extension enables secure single sign-on capabilities for CKAN through industry-standard OAuth2 protocol integration with external identity providers. This comprehensive authentication solution allows organizations to integrate CKAN with existing identity management systems including FIWARE IdM, Google, Microsoft Azure AD, Okta, and custom OAuth2 servers. The extension handles the complete OAuth2 flow including authorization code exchange, token management, user profile synchronization, and secure session management. Users benefit from seamless login experiences without managing separate CKAN credentials while administrators gain centralized user management and enhanced security controls. The system supports automatic user provisioning, role mapping from external systems, and configurable user attribute synchronization including email, names, and organization memberships. Security features include token validation, secure cookie handling, and protection against common OAuth2 vulnerabilities. Essential for enterprise environments requiring centralized authentication, compliance with organizational security policies, and integration with existing identity infrastructure for streamlined user experience.

Version
1.0.7
Version release date
2024-08-21
Contact name
Datopian Team
Contakt email
Contact Url
(not set)


Installation Guide

Configuration hints

Requires HTTPS for security, compatible with FIWARE IdM (use fiware-migration branch)

Plugins to configure (ckan.ini)
oauth2
CKAN Settings (ckan.ini)
# OAuth2 configuration required # ckanext.oauth2.authorization_endpoint = 'https://provider.com/oauth/authorize' # ckanext.oauth2.token_endpoint = 'https://provider.com/oauth/token' # ckanext.oauth2.profile_api_url = 'https://provider.com/user' # ckanext.oauth2.client_id = 'your_client_id' # ckanext.oauth2.client_secret = 'your_client_secret' # ckanext.oauth2.scope = 'profile email' # ckanext.oauth2.redirect_uri = 'https://your-ckan.com/oauth2/callback'
DB migration to be executed
(not set)
<< back to Extensions