lemonldap-ng/doc/sources/admin/authcas.rst

114 lines
2.9 KiB
ReStructuredText
Raw Normal View History

2020-05-14 23:29:41 +02:00
CAS
===
============== ===== ========
Authentication Users Password
============== ===== ========
2020-05-18 09:56:39 +02:00
2020-05-14 23:29:41 +02:00
============== ===== ========
Presentation
------------
LL::NG can delegate authentication to a CAS server. This requires `Perl
CAS module <http://sourcesup.cru.fr/projects/perlcas/>`__.
2020-05-18 09:56:39 +02:00
.. tip::
2020-05-14 23:29:41 +02:00
LL::NG can also act as :doc:`CAS server<idpcas>`, that allows
one to interconnect two LL::NG systems.
LL::NG can also request proxy tickets for its protected services. Proxy
tickets will be collected at authentication phase and stored in user
session under the form:
2020-05-18 09:56:39 +02:00
``_casPT<serviceID>`` = **Proxy ticket value**
2020-05-14 23:29:41 +02:00
They can then be forwarded to applications through
2020-05-18 09:56:39 +02:00
:ref:`HTTP headers<headers>`.
2020-05-14 23:29:41 +02:00
2020-05-18 09:56:39 +02:00
.. tip::
2020-05-14 23:29:41 +02:00
CAS authentication will automatically add a
:doc:`logout forward rule<logoutforward>` on CAS server logout URL in
order to close CAS session on LL::NG logout.
Configuration
-------------
In Manager, go in ``General Parameters`` > ``Authentication modules``
and choose CAS for authentication.
2020-05-18 09:56:39 +02:00
.. tip::
2020-05-14 23:29:41 +02:00
You can then choose any other module for users and
password.
2020-05-21 15:13:24 +02:00
.. attention::
2020-05-14 23:29:41 +02:00
Browser implementations of formAction directive are
inconsistent (e.g. Firefox doesn't block the redirects whereas Chrome
does). Administrators may have to modify formAction value with wildcard
likes \*.
2020-05-18 09:56:39 +02:00
2020-05-14 23:29:41 +02:00
In Manager, go in :
2020-05-18 09:56:39 +02:00
2020-05-14 23:29:41 +02:00
``General Parameters`` > ``Advanced Parameters`` > ``Security`` >
2020-05-18 09:56:39 +02:00
``Content Security Policy`` > ``Form destination``
2020-05-14 23:29:41 +02:00
Then, go in ``CAS parameters``:
- **Authentication level**: authentication level for this module.
2022-05-18 10:02:54 +02:00
Then create the list of CAS servers in the manager.
Options
~~~~~~~
2020-05-14 23:29:41 +02:00
- **Server URL** *(required)*: CAS server URL (must use https://)
- **Renew authentication** *(default: disabled)*: force authentication
renewal on CAS server
- **Gateways authentication** *(default: disabled)*: force transparent
authentication on CAS server
2022-05-18 10:02:54 +02:00
Proxied services
~~~~~~~~~~~~~~~~
In this section, set the list of services for which a proxy ticket is
requested:
- **Key**: Service ID
- **Value** Service URL (CAS service identifier)
Display
~~~~~~~
2020-05-14 23:29:41 +02:00
- **Display Name**: Name to display. Required if you have more than 1
CAS server declared
- **Icon**: Path to CAS Server icon. Used only if you have more than 1
CAS server declared
2022-05-18 10:02:54 +02:00
- **Resolution Rule**: rule that will be applied to preselect a CAS server for
a user. You have access to all environment variable *(like user IP address)*
and all session keys.
2020-05-14 23:29:41 +02:00
2022-05-18 10:02:54 +02:00
For example, to preselect this server for users coming from 129.168.0.0/16
network
::
$ENV{REMOTE_ADDR} =~ /^192\.168/
To preselect this server when the ``MY_SRV`` :doc:`choice <authchoice>` is selected ::
$_choice eq "MY_SRV"
- **Order**: Number to sort CAS Servers display
2020-05-14 23:29:41 +02:00
2020-05-18 09:56:39 +02:00
.. tip::
2020-05-14 23:29:41 +02:00
If no proxied services defined, CAS authentication will not
activate the CAS proxy mode with this CAS server.