Skip to content
Snippets Groups Projects
Commit 946b3099 authored by Quentin CHEVALIER's avatar Quentin CHEVALIER
Browse files

Merge branch 'LDAP_changes' of gitlab.binets.fr:br/sigma-backend into LDAP_changes

parents 8e68b1d8 90264f18
No related branches found
No related tags found
No related merge requests found
......@@ -45,7 +45,7 @@ Détaillons ici les conditions exactes pour avoir un niveau de droit donné.
#### Pour les méta-groupes
- Un user est membre d'un méta-groupe G s'il est membre (hérité) d'un groupe simple dans G.
- Un user est speaker d'un méta-groupe G s'il est admin strict d'un groupe simple dans G.
- Un user est speaker d'un méta-groupe G s'il est speaker d'un groupe simple dans G.
- Un user est admin d'un méta-groupe G s'il est admin (hérité) d'un groupe simple dans G.
- Un user est viewer d'un méta-groupe G s'il est viewer d'un groupe simple dans G.
......
......@@ -48,8 +48,8 @@ passport.use(new LdapStrategy({
//tlsOptions: '..........',
//https://www.npmjs.com/package/passport-ldapauth for more
},
usernameField: ldapConfig.user.uid,
passwordField: ldapConfig.user.password,
//usernameField: 'username', // Field name where the username is found, defaults to username
//passwordField: 'password', // Field name where the password is found, defaults to password
// no verify callback is needed, as we leave the authentication layer as simple as possible
// we leave this, commented out, as a template for future use
......
......@@ -70,7 +70,10 @@ export class Tools {
*/
static async memberOfSimple(data: userData): Promise<GroupSet> {
//Do a DFS from data.members to find all parents
return Tools.DFS(data.members, 'parent');
//return Tools.DFS(data.members, 'parent');
//No need to do DFS
return new GroupSet(data.members);
}
/**
......@@ -95,7 +98,10 @@ export class Tools {
*/
static async adminOfSimple(data: userData): Promise<GroupSet> {
//Do a DFS from data.admins to find all children
return Tools.DFS(data.admins, 'child');
//return Tools.DFS(data.admins, 'child');
//No need to do DFS
return new GroupSet(data.admins);
}
/**
......@@ -135,8 +141,8 @@ export class Tools {
* @async
*/
static async speakerOf(data: userData): Promise<GroupCollection> {
let speaker = await Tools.speakerOfSimple(data);
return { simpleGroups: speaker, metaGroups: await Tools.metaGroupsOfGroups(new GroupSet(data.admins)) };
let simple = await Tools.speakerOfSimple(data);
return { simpleGroups: simple, metaGroups: await Tools.metaGroupsOfGroups(simple) };
}
/**
......
......@@ -85,7 +85,7 @@ type Mutation {
== Pour les ta-groupes ==
- Un user est membre d'un ta-groupe G s'il est membre (hérité) d'un groupe simple dans G.
- Un user est speaker d'un ta-groupe G s'il est admin strict d'un groupe simple dans G.
- Un user est speaker d'un ta-groupe G s'il est speaker d'un groupe simple dans G.
- Un user est admin d'un ta-groupe G s'il est admin (hérité) d'un groupe simple dans G.
- Un user est viewer d'un ta-groupe G s'il est viewer d'un groupe simple dans G.
......
......@@ -35,7 +35,7 @@ export class User {
static async peek(uid: string) : Promise<userData> {
try {
let data = await Tools.peek<userData>("user", uid, userData);
for (let cat of categories) data[cat].map(dn => dn.split(',')[0].split('=')[1]);
for (let cat of categories) data[cat] = data[cat].map(dn => dn.split(',')[0].split('=')[1]);
return data;
}
catch(err) {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment