NAME
OIDC::Lite::Server::Endpoint::Registration - registration endpoint PSGI application
SYNOPSIS
registration_endpoint.psgi
use strict;
use warnings;
use Plack::Builder;
use OIDC::Lite::Server::Endpoint::Registration;
use MyDataHandlerClass;
builder {
my $app = OIDC::Lite::Server::Endpoint::Registration->new(
data_handler => 'MyDataHandlerClass',
);
$app->support_types(qw(client_register client_update rotate_secret));
$app;
};
DESCRIPTION
The object of this class behaves as PSGI application (subroutine reference). This is for OpenID Connect registration-endpoint.
Reference spec: http://openid.net/specs/openid-connect-registration-1_0-14.html
At first you have to make your custom class inheriting OIDC::Lite::Server::DataHandler, and setup PSGI file with it.
METHODS
new( %params )
- data_handler
-
name of your custom class that inherits OIDC::Lite::Server::DataHandler and implements interface.
- error_uri
-
Optional. URI that represents error description page. This would be included in error responses.
support_grant_type( $type )
support_grant_types( @types )
You can set 'client_register', 'rotate_secret', or 'client_update'
data_handler
psgi_app
compile_psgi_app
handle_request( $req )
TEST
You can test with OAuth::Lite2::Agent::PSGIMock and some of client classes.
my $app = OIDC::Lite::Server::Endpoint::Registration->new(
data_handler => 'MyDataHandlerClass',
);
my $mock_agent = OAuth::Lite2::Agent::PSGIMock->new(app => $app);
my $client = OAuth::Lite2::Client::Registration->new(
registration_endpoint => q{http://localhost/redirect}
agent => $mock_agent,
);
my $config = {
redirect_uris => q{https://example.com/redirect_uri},
application_name => q{test_app_name},
};
my $client_credentials = $client->associate(
metadata => $config,
);
ok($client_credentials);
AUTHOR
Ryo Ito, <ritou.06@gmail.com>
COPYRIGHT AND LICENSE
Copyright (C) 2012 by Ryo Ito
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.8 or, at your option, any later version of Perl 5 you may have available.