Apache...Simple(3pm)

πŸ“¦
version 0.10 Β· 2 versions
, in debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

πŸ’– Apache2::AuthCASSimple β€” the manual, but make it make sense πŸ’–

okay bestie, sit down, grab a boba, because we're talking about Apache2::AuthCASSimple(3pm) and honestly? it's giving login-without-login and I'm obsessed. πŸŽ€


✨ NAME ✨

Apache2::AuthCASSimple β€” an Apache2 module to authentificate through a CAS server πŸ¦‹


🌸 DESCRIPTION 🌸

Apache2::AuthCASSimple is an authentication module for Apache2/mod_perl2. It lets you authentificate users through a Yale CAS server. What that means in bestie terms: you do NOT need to hand over a login/password if you've already been authentificate by the CAS server β€” literally only tickets get exchanged between the Web client, the Apache2 server and the CAS server. And if you're not authentificate yet? You get redirected straight to the CAS server login form. iconic behaviour, no notes. πŸ’…

This module also allows the use of simple text files for sessions. yes queen, plain files. πŸ“


⭐ SYNOPSIS ⭐

  PerlOptions +GlobalRequest

  <Location /protected>
    AuthType Apache2::AuthCASSimple
    PerlAuthenHandler Apache2::AuthCASSimple

    PerlSetVar CASServerName my.casserver.com
    PerlSetVar CASServerPath /
    # PerlSetVar CASServerPort 443
    # PerlSetVar CASServerNoSSL 1
    PerlSetVar CASSessionTimeout 3660
    PerlSetVar CASSessionDirectory /tmp
    # PerlSetVar CASFixDirectory /
    # PerlSetVar ModProxy 1
    # PerlSetVar HTTPSServer 1

    require valid-user
  </Location>

or, alternatively, the other vibe:

  order deny,allow
  deny from all

  require user xxx yyyy

  satisfy any

🧚 CONFIGURATION 🧚

every single one of these, coming right up. πŸ’œ

  • CASServerName β€” Name of the CAS server. It can be a numeric IP address.
  • CASServerPort β€” Port of the CAS server. Default is 443.
  • CASServerPath β€” Path (URI) of the CAS server. Default is "/cas".
  • CASServerNoSSL β€” Disable SSL transaction wih CAS server (HTTPS). Default is off.
  • CASCaFile β€” CAS server public key. This file is used to allow secure connection between the webserver using Apache2::AuthCASSimple and the CAS server.
DEPRECATED : Authen::CAS::Client use LWP::UserAgent to make https requests 😭 (so like, it's old news bestie, but it's still documented here, periodt)
  • CASSessionTimeout β€” Timeout (in second) for session create by Apache2::AuthCASSimple (to avoid CAS server overloading). Default is 60.
    • -1 means disable.
    • 0 mean infinite (until the user close browser).
  • CASSessionDirectory β€” Directory where session data are stored. Default is /tmp.
  • CASFixDirectory β€” Force the path of the session cookie for same policy in all subdirectories else current directory is used.
  • ModProxy β€” Apache2 mod_perl2 don't be use with mod_proxy. Default is off.
  • HTTPSServer β€” If you want to keep a HTTPS server for all data. Default is 0.
  • OK AUTH_REQUIRED DECLINED REDIRECT SERVER_ERROR M_GET β€” Apache constants to make pod coverage happy πŸ™ˆ (yes that's literally the reason, we love a transparent module)

πŸ’€ METHOD πŸ’€

handler

call by apache2


πŸ‘‘ VERSION πŸ‘‘

This documentation describes Apache2::AuthCASSimple version 0.10.


🩹 BUGS AND TROUBLESHOOTING 🩹

bestie this is the fix it section, read it all, I'm not joking 🫢

  • Old expired sessions files must be deleted with an example provided script : "delete_session_data.pl"
  • Apache::Session::Wrapper certainly need Apache2::Cookie
  • $r must be global for sessions with Apache::Session::Wrapper, add
  PerlOptions +GlobalRequest

in your virtualhost conf

  • Apreq module must be enable in debian
  a2enmod apreq

or add

  LoadModule apreq_module /usr/lib/apache2/modules/mod_apreq2.so

in your apache configuration file

Please submit any bug reports to agostini@univ-metz.fr. πŸ“¬


πŸ“ NOTES πŸ“

  • Requires "mod_perl 2" version 2.02 or later
  • Requires Authen::CAS::Client
  • Requires Apache::Session::Wrapper

three whole requirements, she's low maintenance I promise 🌈


πŸŽ€ AUTHOR πŸŽ€

    Yves Agostini
    CPAN ID: YVESAGO
    Univ Metz
    agostini@univ-metz.fr
    http://www.crium.univ-metz.fr

Copyright (c) 2009 by Yves Agostini

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

The full text of the license can be found in the LICENSE file included with this module.


and that's the whole page, bestie!! πŸ’…βœ¨ this doc was brought to you by perl v5.34.0, dated 2022-06-06, and filed under User Contributed Perl Documentation β€” slay, go forth and authentificate responsibly πŸ¦‹πŸ’œ

πŸ“¦ where this page comes from