oalders / Mojolicious-Plugin-Web-Auth

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

NAME

Mojolicious::Plugin::Web::Auth - Authentication plugin for Mojolicious

SYNOPSIS

# Mojolicious
$self->plugin('Web::Auth',
    module      => 'Twitter',
    key         => 'Twitter consumer key',
    secret      => 'Twitter consumer secret',
    on_finished => sub {
        my ( $c, $access_token, $access_secret ) = @_;
        ...
    },
);

# Mojolicious::Lite
plugin 'Web::Auth',
    module      => 'Twitter',
    key         => 'Twitter consumer key',
    secret      => 'Twitter consumer secret',
    on_finished => sub {
        my ( $c, $access_token, $access_secret ) = @_;
        ...
    };


### default authentication endpoint: /auth/{moniker}/authenticate
# e.g.)
# /auth/twitter/authenticate
# /auth/facebook/authenticate
### default callback endpoint: /auth/{moniker}/callback
# e.g.)
# /auth/twitter/callback
# /auth/facebook/callback

DESCRIPTION

Mojolicious::Plugin::Web::Auth is authentication plugin for Mojolicious.

METHODS

Mojolicious::Plugin::Web::Auth inherits all methods from Mojolicious::Plugin.

OPTIONS

Mojolicious::Plugin::Web::Auth supports the following options.

module

This is a module name for authentication plugins.

Dropbox, Facebook, Github, Google, Instagram, Twitter.

key

consumer key

secret

consumer secret

scope

optional. OAuth 2.0 only.

# Facebook
plugin 'Web::Auth',
    module      => 'Facebook',
    key         => 'Facebook App ID',
    secret      => 'Facebook App Secret',
    scope       => 'email,user_birthday',
    on_finished => sub {
        my ( $c, $access_token, $user_info ) = @_;
        ...
    };

validate_state

optinal. OAuth 2.0 only. default value is 1, see http://tools.ietf.org/html/rfc6819#section-5.3.5

on_finished

# Mojolicious::Lite
plugin 'Web::Auth',
    module      => 'Twitter',
    key         => 'Twitter consumer key',
    secret      => 'Twitter consumer secret',
    on_finished => sub {
        my ( $c, $access_token, $access_secret, $user_ino ) = @_;
        ...
    };

This is a callback when authentication was finished.

arguments

  • OAuth 1.0(A)

    Dropbox, Twitter, etc.

    • Mojolicious::Controller
    • access_token
    • access_secret
    • user_info ( enabled 'user_info' )
  • OAuth 2.0

    Facebook, Github, Google, Instagram, etc.

    • Mojolicious::Controller
    • access_token
    • user_info ( enabled 'user_info' )

on_error

This is a callback when authentication was errored.

AUTHOR

hayajo hayajo@cpan.org

CONTRIBUTORS

Many thanks to the contributors for their work.

  • FAYLAND
  • uzulla@github
  • sachinjsk@github
  • mala@github
  • shohey1226@github
  • levonet@github

COPYRIGHT

Copyright 2013- hayajo

LICENSE

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO

Mojolicious, Amon2::Auth

About

License:Other


Languages

Language:Perl 80.4%Language:Perl 6 19.6%