Accéder au contenu.
Menu Sympa

fr - Re: [sympa-fr] Scenario d'autorisation - Requête LDAP

Objet : Pour les administrateurs de serveurs de listes utilisant le logiciel Sympa

Archives de la liste

Chronologique Discussions  
  • From: David Verdin <adresse@cachée>
  • To: adresse@cachée
  • Subject: Re: [sympa-fr] Scenario d'autorisation - Requête LDAP
  • Date: Tue, 9 Jan 2018 12:50:53 +0100

Bonjour,

À la louche, je dirais que c'est un bon candidat pour une custom condition: https://www.sympa.org/manual/authorization-scenarios#custom_perl_package_conditions

Un truc dans ce genre, peut-être, certainement améliorable :

#!/usr/bin/perl
package CustomCondition::lilletruc;
use strict;
use List;
sub verify {
    my ($sender, $listname) = @_;
    return 0 unless ($sender && $listname);
    my $list = List::new($listname);
    return 0 unless ($list);
    if ($list->is_user($sender) {
        return 1;
    }
    return 0 unless ($sender =~ m{
univ-lille\.fr});
    $sender =~ s{univ-lille\.fr}{univ-lille1.fr};

    if ($list->is_user($sender) {
        return 1;
    }
    $sender =~ s{univ-lille1\.fr}{univ-lille2.fr};
    if ($list->is_user($sender) {
        return 1;
    }
    $sender =~ s{univ-lille2\.fr}{univ-lille3.fr};
    if ($list->is_user($sender) {
        return 1;
    }
    return 0;
}
1;

Après, tu mets cette ligne dans ton scénario :
CustomCondition::lilletruc([sender],[listname]) smtp,smime,md5,dkim -> do_it()

Le scénario renvoie 1 si la personne est abonnée. Si l'adresse d'expédition n'est pas abonnée et que c'est du univ-lille.fr, il essaie de substituer avec du lille 1 2 ou 3.

Voilà. Le scénario n'est pas testé, donc à prendre avec des pincettes mais ça vous fait une base de départ.

Bonne journée !

David


On 09/01/2018 12:22, Antoine BOURSIER wrote:
Bonjour à tous,

Je me permet de vous solliciter une fois de plus, pour un soucis sur un scenario d'autorisation.

Nous avons historiquement à l'université, 3 types d'adresses mails (@univ-lille1.fr, @univ-lille2.fr et @univ-lille3.fr).
Cette année, les 3 universités de Lille fusionnent et tout le monde utilisera à terme une adresse en univ-lille.fr.

J'aimerais pouvoir mettre en place un scénario, qui autorise un utilisateur qui écrit avec son adresse @univ-lille.fr à écrire à une liste, si celui-ci est abonné avec son adresse en @univ-lille(1|2|3).fr.

J'ai pensé à faire une recherche LDAP pour récupérer l'ancienne adresse mail de l'utilisateur et vérifier si celui-ci est abonné à la liste, mais je ne trouve pas le moyen de le mettre en oeuvre.
Comment utiliser le résultat d'une requête LDAP avec la condition "is_subscriber" du scénario, au lieu de "search" ?

Si quelqu'un a déjà eu l'occasion de travailler sur des scénario complexes ou à une idée sur la façon de procéder, je suis preneur :)

PS : Je ne peux pas abonné les deux types d'adresses à la même liste. Les mails étant transférés d'une boite à l'autre, cela causerait des doublons.

Merci à vous et bonne journée à tous.

Antoine Boursier
Administrateur Systèmes
Direction des systèmes d'information | Cellule Systèmes & Hébergements
adresse@cachée
Université de Lille | Sciences Humaines et Sociales

-- 
"Mieux vaut viser la perfection et la rater que viser la médiocrité et l'atteindre."
- Francis Blanche

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature




Archives gérées par MHonArc 2.6.19+.

Haut de le page