mirror of
https://gitlab.easter-eggs.com/ee/ldapsaisie.git
synced 2024-12-18 14:33:49 +01:00
LSprofiles by LSobject: add possibility to compute basedn using LSformat on authenticated user
This commit is contained in:
parent
a56b20728a
commit
dcf68a2330
2 changed files with 12 additions and 8 deletions
|
@ -203,7 +203,7 @@ objets pour lesquels l'utilisateur appartiendra au
|
||||||
// or
|
// or
|
||||||
'filter' => [format du filtre de recherche],
|
'filter' => [format du filtre de recherche],
|
||||||
|
|
||||||
'basedn' => [basedn de recherche],
|
'basedn' => [format du basedn de recherche],
|
||||||
'params' => [configuration de la recherche]
|
'params' => [configuration de la recherche]
|
||||||
),
|
),
|
||||||
array (
|
array (
|
||||||
|
@ -215,7 +215,7 @@ objets pour lesquels l'utilisateur appartiendra au
|
||||||
// ou
|
// ou
|
||||||
'filter' => [format du filtre de recherche],
|
'filter' => [format du filtre de recherche],
|
||||||
|
|
||||||
'basedn' => [basedn de recherche],
|
'basedn' => [format du basedn de recherche],
|
||||||
'params' => [configuration de la recherche]
|
'params' => [configuration de la recherche]
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
|
@ -232,12 +232,13 @@ la valeur clé <emphasis>LSobjects</emphasis> signifie qu'on est dans un cas de
|
||||||
délégation de droits sur des types d'LSobject. Dans ce tableau associatif, il
|
délégation de droits sur des types d'LSobject. Dans ce tableau associatif, il
|
||||||
est possible de définir un ou plusieurs types de LSobject pour lesquels on délègue
|
est possible de définir un ou plusieurs types de LSobject pour lesquels on délègue
|
||||||
des droits via des recherches simples ou enchaînées. Le fonctionnement simple
|
des droits via des recherches simples ou enchaînées. Le fonctionnement simple
|
||||||
consiste à partir de l'objet de l'utilisateur et à générer un filtre de
|
consiste à partir de l'objet de l'utilisateur et à générer un filtre et une base de
|
||||||
recherche sur un type de LSobject. Le fonctionnement enchainée consiste à faire
|
recherche sur un type de LSobject. Le fonctionnement enchainée consiste à faire
|
||||||
un première recherche à partir de l'objet de l'utilisateur puis à recommencer à
|
un première recherche à partir de l'objet de l'utilisateur puis à recommencer à
|
||||||
partir des objets trouvés en construisant une liste de filtres de recherche
|
partir des objets trouvés en construisant une liste de filtres de recherche
|
||||||
pour chaque objet qui seront combinés via l'opérateur booléen
|
pour chaque objet qui seront combinés via l'opérateur booléen
|
||||||
<emphasis>ou</emphasis>.</para>
|
<emphasis>ou</emphasis>. Dans le cadre d'un fonctionnement enchainée, la base de
|
||||||
|
recherche est toujours générer à partir de l'objet de l'utilisateur connecté.</para>
|
||||||
|
|
||||||
<para>Pour configurer une délégation de type simple on mettra le nom du
|
<para>Pour configurer une délégation de type simple on mettra le nom du
|
||||||
LSobject dans la clé du tableau et dans la valeur un tableau définissant la
|
LSobject dans la clé du tableau et dans la valeur un tableau définissant la
|
||||||
|
@ -298,8 +299,11 @@ objets retournés. Les paramètres de la recherche sont :
|
||||||
<varlistentry>
|
<varlistentry>
|
||||||
<term>basedn</term>
|
<term>basedn</term>
|
||||||
<listitem>
|
<listitem>
|
||||||
<simpara>C'est le <emphasis>basedn</emphasis> de la recherche. Il est possible
|
<simpara>C'est le format paramétrable du <emphasis>basedn</emphasis> de la
|
||||||
ainsi de la limiter sur les LSojects d'une branche précise de l'annuaire.
|
recherche généré à partir de l'utilisateur connecté. Il est possible ainsi
|
||||||
|
de la limiter sur les LSojects d'une branche précise de l'annuaire.
|
||||||
|
Voir le paragraphe <link linkend="config-LSformat">Format paramètrable</link>
|
||||||
|
pour plus d'informations sur l'écriture du format.</simpara>
|
||||||
<emphasis>(Paramètre facultatif)</emphasis></simpara>
|
<emphasis>(Paramètre facultatif)</emphasis></simpara>
|
||||||
</listitem>
|
</listitem>
|
||||||
</varlistentry>
|
</varlistentry>
|
||||||
|
|
|
@ -1934,7 +1934,7 @@ class LSsession {
|
||||||
}
|
}
|
||||||
$filter = LSldap::combineFilters('or', $filters);
|
$filter = LSldap::combineFilters('or', $filters);
|
||||||
$params = array(
|
$params = array(
|
||||||
'basedn' => isset($filter_def['basedn']) ? $filter_def['basedn'] : $basedn,
|
'basedn' => isset($filter_def['basedn']) ? self :: getLSuserObject() -> getFData($filter_def['basedn']) : $basedn,
|
||||||
'filter' => $filter,
|
'filter' => $filter,
|
||||||
'onlyAccessible' => False
|
'onlyAccessible' => False
|
||||||
);
|
);
|
||||||
|
@ -1971,7 +1971,7 @@ class LSsession {
|
||||||
}
|
}
|
||||||
# we are gonna grow a set of objects progressively, we start from the user
|
# we are gonna grow a set of objects progressively, we start from the user
|
||||||
$set = array(self :: getLSuserObject());
|
$set = array(self :: getLSuserObject());
|
||||||
$basedn = isset($listInfos['basedn']) ? $listInfos['basedn'] : null;
|
$basedn = isset($listInfos['basedn']) ? self :: getLSuserObject() -> getFData($listInfos['basedn']) : null;
|
||||||
$LSobject = isset($listInfos['LSobject']) ? $listInfos['LSobject'] : $LSobject;
|
$LSobject = isset($listInfos['LSobject']) ? $listInfos['LSobject'] : $LSobject;
|
||||||
|
|
||||||
if (isset($listInfos['filters']) && is_array($listInfos['filters'])) {
|
if (isset($listInfos['filters']) && is_array($listInfos['filters'])) {
|
||||||
|
|
Loading…
Reference in a new issue