NAME¶
Net::OAuth2::AuthorizationServer::ImplicitGrant - OAuth2 Resource Owner Implicit
Grant
SYNOPSIS¶
my $Grant = Net::OAuth2::AuthorizationServer::ImplicitGrant->new(
clients => {
TrendyNewService => {
# optional
redirect_uri => 'https://...',
# optional
scopes => {
post_images => 1,
annoy_friends => 1,
},
},
}
);
# verify a client against known clients
my ( $is_valid,$error,$scopes ) = $Grant->verify_client(
client_id => $client_id,
redirect_uri => $uri, # optional
scopes => [ qw/ list of scopes / ], # optional
);
if ( ! $Grant->login_resource_owner ) {
# resource owner needs to login
...
}
# have resource owner confirm (and perhaps modify) scopes
my ( $confirmed,$error,$scopes_ref ) = $Grant->confirm_by_resource_owner(
client_id => $client_id,
scopes => [ qw/ list of scopes / ],
);
# generate a token
my $token = $Grant->token(
client_id => $client_id,
scopes => $scopes_ref,
redirect_uri => $redirect_uri,
user_id => $user_id, # optional
jwt_claims_cb => sub { ... }, # optional, see jwt_claims_cb in Manual
);
# store access token
$Grant->store_access_token(
client_id => $client,
access_token => $access_token,
scopes => $scopes_ref,
);
# verify an access token
my ( $is_valid,$error ) = $Grant->verify_access_token(
access_token => $access_token,
scopes => $scopes_ref,
);
CONSTRUCTOR ARGUMENTS¶
Along with those detailed at "CONSTRUCTOR ARGUMENTS" in
Net::OAuth2::AuthorizationServer::Manual the following are supported by this
grant type:
CALLBACK FUNCTIONS¶
The following callbacks are supported by this grant type:
verify_client_cb
login_resource_owner_cb
confirm_by_resource_owner_cb
store_access_token_cb
verify_access_token_cb
Please see "CALLBACK FUNCTIONS" in
Net::OAuth2::AuthorizationServer::Manual for documentation on each callback
function.
AUTHOR¶
Lee Johnson - "leejo@cpan.org"