Yancy::Plugin::Auth::Github - Authenticate using Github's OAuth2 provider
version 1.055
use Mojolicious::Lite; plugin Yancy => { backend => 'sqlite://myapp.db', }; app->yancy->plugin( 'Auth::Github' => { client_id => 'CLIENT_ID', client_secret => $ENV{ OAUTH_GITHUB_SECRET }, schema => 'users', username_field => 'username', # TODO: Get other user information from Github, requesting # scopes if necessary } );
This module allows authenticating using the Github OAuth2 API.
This module extends the Yancy::Auth::Plugin::OAuth2 module to add Github features.
This module composes the Yancy::Auth::Plugin::Role::RequireUser role to provide the require_user authorization method.
Returns the user row of the currently-logged-in user.
Get a link to log in using Github.
This plugin has the following configuration options.
The client ID, provided by Github.
The client secret, provided by Github.
The label for the button to log in using Github. Defaults to Login with Github.
Login with Github
This module uses Mojolicious sessions to store the login information in a secure, signed cookie.
To configure the default expiration of a session, use Mojolicious::Sessions default_expiration.
use Mojolicious::Lite; # Expire a session after 1 day of inactivity app->sessions->default_expiration( 24 * 60 * 60 );
This plugin inherits all helpers from Yancy::Plugin::Auth::OAuth2.
To override these templates, add your own at the designated path inside your app's templates/ directory.
templates/
Display the button to log in using Github.
The layout that Yancy uses when displaying the login form, the unauthorized error message, and other auth-related pages.
Yancy::Plugin::Auth, Yancy::Plugin::Auth::OAuth2
Doug Bell <preaction@cpan.org>
This software is copyright (c) 2020 by Doug Bell.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Yancy, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Yancy
CPAN shell
perl -MCPAN -e shell install Yancy
For more information on module installation, please visit the detailed CPAN module installation guide.