Commit 9ce49acd authored by Stephane Bouvry's avatar Stephane Bouvry
Browse files

Nouvelle version UnicaenAuth

parent dd981123
Loading
Loading
Loading
Loading
Loading
+396 −297

File changed.

Preview size limit exceeded, changes collapsed.

+158 −0
Original line number Diff line number Diff line
@@ -6,6 +6,164 @@
 * drop this config file in it and change the values as you wish.
 */
$settings = array(
/**
    // -------------------------------------- Authentification BDD/LDAP
    'local' => [
        'order' => 2,
        'enabled' => true,
        'description' => "Utilisez ce formulaire si vous possédez un compte LDAP établissement ou un compte local dédié à l'application.",

        // --- Base de données
        'db' => [
            'enabled' => true, // doit être activé pour que l'usurpation fonctionne (cf. Authentication/Storage/Db::read()) :-/
        ],
        // -- LDAP
        'ldap' => [
            'enabled' => true,
        ],
    ],

//    'db' => [
//        'order' => 1,
//        'enabled' => true,
//        'type' => 'local',
//
//        /**
//         * Description facultative de ce mode d'authentification qui apparaîtra sur le formulaire d'authentification.
//         * (NB: Si l'authentification LDAP est également activée, c'est cette description qui sera utilisée)
//         */
//        'description' => "Utilisez ce formulaire si vous possédez un compte local dédié à cette application.",
//    ],
//
//    'ldap' => [
//        /**
//         * Ordre d'affichage du formulaire de connexion.
//         */
//        'order' => 2,
//
//        /**
//         * Activation ou non de ce mode d'authentification.
//         */
//        'enabled' => true,
//
//        /**
//         * Type de substitution.
//         * Permet de "fusionner" les types d'authentification applicative (db) et établissement (ldap) et donc leurs
//         * formulaires de connexion respectifs.
//         */
//        'type' => 'local',
//
//        /**
//         * Description facultative de ce mode d'authentification qui apparaîtra sur le formulaire de connexion.
//         */
//        'description' => "Utilisez ce formulaire si vous possédez un compte établissement.",
//    ],

    /**
     * Authentification via la fédération d'identité (Shibboleth).
     */
    'shib' => [
        'order' => 4,
        'enabled' => false,
        'description' =>
            "Cliquez sur le bouton ci-dessous pour accéder à l'authentification via la fédération d'identité. " .
            "<strong>NB: Vous devrez utiliser votre compte " .
            "&laquo; <a href='http://vie-etudiante.unicaen.fr/vie-numerique/etupass/'>etupass</a> &raquo; " .
            "pour vous authentifier...</strong>",

        /**
         * URL de déconnexion.
         */
        'logout_url' => '/Shibboleth.sso/Logout?return=', // NB: '?return=' semble obligatoire!

        /**
         * Simulation d'authentification d'un utilisateur.
         */
        //'simulate' => [
        //    'eppn'        => 'eppn@domain.fr',
        //    'supannEmpId' => '00012345',
        //],

        /**
         * Alias éventuels des clés renseignées par Shibboleth dans la variable superglobale $_SERVER
         * une fois l'authentification réussie.
         */
        'aliases' => [
            'eppn'                   => 'HTTP_EPPN',
            'mail'                   => 'HTTP_MAIL',
            'eduPersonPrincipalName' => 'HTTP_EPPN',
            'supannEtuId'            => 'HTTP_SUPANNETUID',
            'supannEmpId'            => 'HTTP_SUPANNEMPID',
            'supannCivilite'         => 'HTTP_SUPANNCIVILITE',
            'displayName'            => 'HTTP_DISPLAYNAME',
            'sn'                     => 'HTTP_SN',
            'givenName'              => 'HTTP_GIVENNAME',
        ],

        /**
         * Clés dont la présence sera requise par l'application dans la variable superglobale $_SERVER
         * une fois l'authentification réussie.
         */
        //'required_attributes' => [
        //    'eppn',
        //    'mail',
        //    'eduPersonPrincipalName',
        //    'supannCivilite',
        //    'displayName',
        //    'sn|surname', // i.e. 'sn' ou 'surname'
        //    'givenName',
        //    'supannEtuId|supannEmpId',
        //],
    ],

    'cas' => [
        /**
         * Ordre d'affichage du formulaire de connexion.
         */
        'order' => 1,

        /**
         * Activation ou non de ce mode d'authentification.
         */
        'enabled' => false,

        /**
         * Description facultative de ce mode d'authentification qui apparaîtra sur la page de connexion.
         */
        'description' => "Cliquez sur le bouton ci-dessous pour accéder à l'authentification centralisée.",

        /**
         * Infos de connexion au serveur CAS.
         */
        'connection' => [
            'default' => [
                'params' => [
                    'hostname' => 'host.domain.fr',
                    'port'     => 443,
                    'version'  => "2.0",
                    'uri'      => "",
                    'debug'    => false,
                ],
            ],
        ]
    ],

    /**
     * Identifiants de connexion LDAP autorisés à faire de l'usurpation d'identité.
     * NB: à réserver exclusivement aux tests.
     */


    // 'usurpation_allowed_usernames' => array('sbouvry', 'bouvry', 'turbout'),

    // Champ utilisé pour l'autentification (côté LDAP)
    //'ldap_username' => 'supanaliaslogin',





////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
    /**
     * Paramètres de connexion au serveur CAS :
     * - pour désactiver l'authentification CAS, le tableau 'cas' doit être vide.