Catalyst-Plugin-OAuth2-ResourceServer

 view release on metacpan or  search on metacpan

META.json  view on Meta::CPAN

            "MooX::StrictConstructor" : "0",
            "Scalar::Util" : "0",
            "Try::Tiny" : "0",
            "URI" : "0",
            "namespace::clean" : "0",
            "perl" : "5.036"
         }
      },
      "test" : {
         "requires" : {
            "HTTP::Request::Common" : "0",
            "Moose" : "0",
            "Test::Fatal" : "0",
            "Test::More" : "0.98",
            "namespace::autoclean" : "0"
         }
      }
   },
   "release_status" : "stable",
   "resources" : {
      "bugtracker" : {

META.yml  view on Meta::CPAN

---
abstract: 'MCP-profile OAuth 2.1 Resource Server plugin for Catalyst'
author:
  - 'Mike Whitaker <mike@altrion.org>'
build_requires:
  ExtUtils::MakeMaker: '0'
  HTTP::Request::Common: '0'
  Moose: '0'
  Test::Fatal: '0'
  Test::More: '0.98'
  namespace::autoclean: '0'
configure_requires:
  ExtUtils::MakeMaker: '0'
dynamic_config: 1
generated_by: 'ExtUtils::MakeMaker version 7.64, CPAN::Meta::Converter version 2.150010'
license: perl
meta-spec:

Makefile.PL  view on Meta::CPAN

        'Scalar::Util'           => 0,
        'Try::Tiny'              => 0,
        'Crypt::JWT'             => 0,
        'JSON::MaybeXS'          => 0,
        'URI'                    => 0,
        'Catalyst::Runtime'      => '5.90000',
    },
    TEST_REQUIRES => {
        'Test::More'            => '0.98',
        'Test::Fatal'           => 0,
        'HTTP::Request::Common' => 0,
        'Moose'                 => 0,
        'namespace::autoclean'  => 0,
    },
    META_MERGE => {
        'meta-spec' => { version => 2 },
        resources   => {
            repository => {
                type => 'git',
                url  => 'https://github.com/fleetfootmike/Catalyst-Plugin-OAuth2-ResourceServer.git',
                web  => 'https://github.com/fleetfootmike/Catalyst-Plugin-OAuth2-ResourceServer',

cpanfile  view on Meta::CPAN

requires 'Scalar::Util';
requires 'Try::Tiny';
requires 'Crypt::JWT';
requires 'JSON::MaybeXS';
requires 'URI';
requires 'Catalyst::Runtime', '5.90000';

on test => sub {
    requires 'Test::More', '0.98';
    requires 'Test::Fatal';
    requires 'HTTP::Request::Common';
    requires 'Moose';
    requires 'namespace::autoclean';
};

# Author-only: t/perl_critic.t self-skips unless PERL_CRITIC_TEST is set.
on develop => sub {
    requires 'Test::Perl::Critic';
};

t/catalyst-app.t  view on Meta::CPAN

use v5.36;
use Test::More;
use lib 't/lib';
use HTTP::Request::Common qw/GET/;
use JSON::MaybeXS qw/decode_json/;
use Crypt::JWT qw/encode_jwt/;

use Catalyst::Test 'TestApp';

my $KEY = 'resource-server-secret-key-0123456789';

sub token (%claims) {
    return encode_jwt(
        payload => {

t/urn-resource.t  view on Meta::CPAN

use v5.36;
use Test::More;
use lib 't/lib';
use HTTP::Request::Common qw/GET/;

use Catalyst::Test 'TestAppURN';

# The app's resource is a URN and it sets no resource_metadata_url, so the
# RFC 9728 well-known URL is not derivable. The challenge must still be a valid
# RFC 6750 Bearer challenge, just without a resource_metadata parameter.
{
    my $res = request( GET '/secure' );
    is( $res->code, 401, 'urn resource, missing token -> 401' );
    my $wa = $res->header('WWW-Authenticate') // '';



( run in 0.734 second using v1.01-cache-2.11-cpan-f0ff5d10edf )