Koha::Token - Tokenizer
use Koha::Token;
my $tokenizer = Koha::Token->new;
my $token = $tokenizer->generate({ length => 20 });
# safely generate a CSRF token (nonblocking)
my $csrf_token = $tokenizer->generate({
type => 'CSRF', id => $id, secret => $secret,
});
# or check a CSRF token
my $result = $tokenizer->check_csrf({
id => $id, secret => $secret, token => $token,
});
Designed for providing general tokens.
Created due to the need for a nonblocking call to Bytes::Random::Secure
when generating a CSRF token.
Create object (via Class::Accessor).
my $token = $tokenizer->generate({ length => 20 });
my $csrf_token = $tokenizer->generate({
type => 'CSRF', id => $id, secret => $secret,
});
Generate several types of tokens. Now includes CSRF.
Room for future extension.
Shortcut for: generate({ type => 'CSRF', ... })
my $result = $tokenizer->check({
type => 'CSRF', id => $id, secret => $secret, token => $token,
});
Check several types of tokens. Now includes CSRF.
Room for future extension.
Shortcut for: check({ type => 'CSRF', ... })
Marcel de Rooy, Rijksmuseum Amsterdam, The Netherlands