NAME

RT-Authen-OAuth2 - External authentication for OAuth 2 sources, like Google, Twitter, GitHub, etc.

DESCRIPTION

External authentication for OAuth2 sources.

RT VERSION

Works with RT 4.4 and 5

DEPENDENCIES

Requires Net::OAuth2::Profile::WebServer

INSTALLATION

perl Makefile.PL
make
make install

May need root permissions

Edit your /opt/rt4/etc/RT_SiteConfig.pm

Add this line:

Plugin('RT::Authen::OAuth2');
Add / Edit OAuth2 configs found in OAuth2_Config.pm
Clear your mason cache
rm -rf /opt/rt4/var/mason_data/obj
Restart your webserver

AUTHOR

Best Practical Solutions, LLC <modules@bestpractical.com>

BUGS

All bugs should be reported via email to

L<bug-RT-Authen-OAuth2@rt.cpan.org|mailto:bug-RT-Authen-OAuth2@rt.cpan.org>

or via the web at

L<rt.cpan.org|http://rt.cpan.org/Public/Dist/Display.html?Name=RT-Authen-OAuth2>.

LICENSE AND COPYRIGHT

This software is Copyright (c) 2016-2024 by Best Practical Solutions LLC

This is free software, licensed under:

The GNU General Public License, Version 2, June 1991

METHODS

RequestAuthorization()

    Creates an Authorization Request on behalf of the Resource Owner (user), and initiates the OAuth 2 protocol with the Authorization Server. The browser will redirect to the $OAuthRedirect endpoint specified in the config.

LogUserIn()

    Called from the $OAuthRedirect endpoint handler element. Validates the user exists and is allowed to log in, auto-populates user metadata returned from the OAuth 2 server, and sets up a session. If successful, returns to the handler template element to redirect to the final destination.

IDPLoginButtonImage()

    Returns the appropriate login button image for the active OAuth 2 server. This is displayed on the RT login page.

LogOutURL()

    Returns the appropriate logout URL active OAuth 2 server.