NAME

Punk::SAML - SAML 2.0 service provider for Punk applications

VERSION

Version 0.01

SYNOPSIS

use Punk;
plugin 'SAML' => {
    entity_id => 'https://app.example.com/saml',
    idp       => {
        entity_id => 'https://idp.example.com/entity',
        metadata  => 'https://idp.example.com/metadata',
    },
    on_login  => sub {
        my ($c, $identity) = @_;
        $c->login($identity->{name_id});
    },
};

DESCRIPTION

This module is the facade: it carries the version and loads the shared object. The documentation lives in Punk::Plugin::SAML.

Punk::SAML is a service provider. It lets an identity provider sign users into a Punk application, over the Web Browser SSO profile, with HTTP-Redirect out and HTTP-POST in. It is not an identity provider and will not become one.

SEE ALSO

Punk::Plugin::SAML, the real documentation.

Punk::SAML::Response, Punk::SAML::Signature, Punk::SAML::IdP, which are usable with no application booted, because punk saml verify is a tool an operator runs against a saved Response.

Punk::SAML::Error, and the list of codes.

Punk::OAuth2, for the other half of the single sign-on question.

AUTHOR

LNATION, <email at lnation.org>

LICENSE AND COPYRIGHT

This software is Copyright (c) 2026 by LNATION.

This is free software, licensed under the Artistic License 2.0.