Apache2-AuthCAS

 view release on metacpan or  search on metacpan

Changes  view on Meta::CPAN

===========
0.1  Wed Mar 21 13:00:00 2007
    - initial version based on release 0.4 of Apache::CAS by David Castro

Release 0.2
===========
0.2  Wed Nov 21 10:00:00 2007
    - Added mod_perl2 as a dependency for the build
    - Added VERSION variable to the module
    - Implemented David Westlund's patch for CPAN bug #30548,
        "GET value for service not escaped"
    - Corrected an error code returned from proxy_receptor() 
        and simplified the function slightly
    - Corrected CPAN bug #30356,
        "Error when GET parameter without value is sent to a page"

Release 0.3
===========
0.3  Wed Apr 09 00:45:00 2008
    - Added support for CAS 3.1 single sign out
        patch submitted by Enrico Cavalli

lib/Apache2/AuthCAS.pm  view on Meta::CPAN


sub redirect_login($)
{
    my($self) = @_;

    $self->logMsg("start", $LOG_DEBUG);

    my $service = $self->this_url(1);
    $self->logMsg("redirecting to CAS for service: '$service'", $LOG_INFO);

    $service = uri_escape($service);
    $self->setHeader(0, 'Location', "https://"
        . $self->casConfig("Host") . ":" . $self->casConfig("Port")
        . $self->casConfig("LoginUri") . "?service=$service");
    return (Apache2::Const::HTTP_MOVED_TEMPORARILY);
}

sub redirect($;$$)
{
    my($self, $url, $errcode) = @_;

lib/Apache2/AuthCAS.pm  view on Meta::CPAN

        $self->logMsg("redirecting to url: '$url' service: '$service'", $LOG_INFO);

        $self->setHeader(0, 'CAS_FILTER_CAS_HOST',      $self->casConfig("Host"));
        $self->setHeader(0, 'CAS_FILTER_CAS_PORT',      $self->casConfig("Port"));
        $self->setHeader(0, 'CAS_FILTER_CAS_LOGIN_URI', $self->casConfig("LoginUri"));
        $self->setHeader(0, 'CAS_FILTER_SERVICE',       $service);

        $self->logMsg("redirecting to error page") if ($errcode);
        $errcode = "" if (!$errcode);

        $service = uri_escape($service);
        $self->setHeader(0, 'Location'
            , "$url?login_url=https://" . $self->casConfig("Host")
            . ":" . $self->casConfig("Port") . $self->casConfig("LoginUri")
            . "?service=$service&errcode=$errcode");
        return (Apache2::Const::HTTP_MOVED_TEMPORARILY);
    }
    else
    {
        $self->logMsg("no redirect URL, displaying message", $LOG_INFO);
        $self->{'request'}->content_type('text/html');

lib/Apache2/AuthCAS.pm  view on Meta::CPAN

    if ($proxy)
    {
        my $pgtUrl = $self->{'request'}->construct_url();
        $url = $self->casConfig("ProxyValidateUri") . "?pgtUrl=$pgtUrl&";
    }
    else
    {
        $url = $self->casConfig("ServiceValidateUri") . "?";
    }

    $service = uri_escape($service);
    $url .= "service=$service&ticket=$ticket";

    $self->logMsg("request URL: '$url'", $LOG_DEBUG);

    # Net::SSLeay::trace options
    # 0=no debugging, 1=ciphers, 2=trace, 3=dump data
    $Net::SSLeay::trace = ($self->casConfig("LogLevel") >= $LOG_EMERG) ? 3 : 0;

    my($page) = Net::SSLeay::get_https(
        $self->casConfig("Host"), $self->casConfig("Port"), $url);



( run in 0.343 second using v1.01-cache-2.11-cpan-c21f80fb71c )