« Administration des roles » : différence entre les versions

De HackBBS
Aller à la navigation Aller à la recherche
Aucun résumé des modifications
Aucun résumé des modifications
 
Ligne 1 : Ligne 1 :
=== Version 1 - Version active ===
Avec cette version, l'attribution d'un role pour un utilisateur se fait en insérant l'idRank du role dans la table membre. Ainsi, un utilisateur avec plusieurs roles aura plusieurs entrées dans la table membre.
1. Se connecter a la BDD
1. Se connecter a la BDD
<pre>
<pre>
Ligne 10 : Ligne 14 :
3. La table des roles est definie ainsi: (Exemple)
3. La table des roles est definie ainsi: (Exemple)
<pre>
<pre>
MariaDB [hackbbs]> select * from rank;
+----+--------+-------------+----------------------------------------------------------------------------------------------+
+----+--------+-------------+----------------------------------------------------------------------------------------------+
| id | idRank | labelRank  | Description                                                                                  |
| id | idRank | labelRank  | Description                                                                                  |
Ligne 21 : Ligne 24 :
|  5 |    240 | Admin      | L'admin réalise la maintenance du système                                                    |
|  5 |    240 | Admin      | L'admin réalise la maintenance du système                                                    |
|  6 |    255 | Root        | System admin                                                                                |
|  6 |    255 | Root        | System admin                                                                                |
|  7 |    17 | Intel      | Le membre dispose des privileges pour acceder aux ressources de l'quipe Intel                |
|  8 |    18 | Pilot      | Le membre dispose des privileges pour acceder aux ressources de l'quipe Pilot                |
|  9 |    19 | RH          | Le membre dispose des privileges pour acceder aux ressources de l'quipe RH                  |
| 10 |    20 | Trainer    | Le membre dispose des privileges pour acceder aux ressources de l'quipe Formateur            |
| 11 |    21 | Architect  | Le membre dispose des privileges pour acceder aux ressources de l'quipe Architecte          |
| 12 |    22 | Developer  | Le membre dispose des privileges pour acceder aux ressources de l'quipe Developeur          |
| 13 |    23 | Pentester  | Le membre dispose des privileges pour acceder aux ressources de l'quipe Pentest              |
+----+--------+-------------+----------------------------------------------------------------------------------------------+
+----+--------+-------------+----------------------------------------------------------------------------------------------+
</pre>
</pre>


4. L'ajout d'un nouveau role peut se faire avec:
4. L'ajout d'un nouveau role peut se faire avec:
<pre>
<pre>
insert into rank value(7,17,'Intel','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Intel');
INSERT INTO `rank` VALUES (0,0,'Anonymous','Un invite est un visiteur non inscrit'),(1,16,'User','Le membre est une personne ou un bot inscrit'),(2,32,'Notificator','Le notificateur prévient le correcteur lorsqu\'il suspect des erreurs'),(3,48,'Corrector','Le correcteur est habilité à proposer une solution lorsqu\'une erreur est avérée'),(4,64,'Moderator','Le modérateur dispose des droits en écriture sur le serveur pour appliquer les corrections'),(5,240,'Admin','L\'admin réalise la maintenance du système'),(6,255,'Root','System admin'),(7,17,'Intel','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Intel'),(8,18,'Pilot','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Pilot'),(9,19,'RH','Le membre dispose des privileges pour acceder aux ressources de l\'quipe RH'),(10,20,'Trainer','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Formateur'),(11,21,'Architect','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Architecte'),(12,22,'Developer','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Developeur'),(13,23,'Pentester','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Pentest');
insert into rank value(8,18,'Pilote','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Pilot');
</pre>
insert into rank value(9,19,'RH','Le membre dispose des privileges pour acceder aux ressources de l\'équipe RH');
 
insert into rank value(10,20,'Formateur','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Formateur');
 
insert into rank value(11,21,'Architecte','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Architecte');
=== Version 2 (En projet) ===
insert into rank value(12,22,'Developeur','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Developeur');
Avec cette version, l'attribution d'un role pour un utilisateur se fait en modifiant un masque de role pour l'utilisateur.
insert into rank value(13,23,'Pentest','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Pentest');
 
</pre>Les idRank existant ne permettent pas d'utiliser de masque pour attribuer plusieurs role a un utilisateurs. Nous pouvons donc mettre a jour ces idRank en utilisant les bit du binaire:
l'idRank du role dans la table membre. Ainsi, un utilisateur avec plusieurs roles aura plusieurs entrées dans la table membre.
 
Les idRank existant ne permettent pas d'utiliser de masque pour attribuer plusieurs role a un utilisateurs. Nous pouvons donc mettre a jour ces idRank en utilisant les bit du binaire:


<nowiki>------------------</nowiki>+
<nowiki>------------------</nowiki>+

Dernière version du 26 septembre 2024 à 20:05

Version 1 - Version active

Avec cette version, l'attribution d'un role pour un utilisateur se fait en insérant l'idRank du role dans la table membre. Ainsi, un utilisateur avec plusieurs roles aura plusieurs entrées dans la table membre.


1. Se connecter a la BDD

mysql -u root -p

2. Acceder a la BDD hackbbs

use hackbbs

3. La table des roles est definie ainsi: (Exemple)

+----+--------+-------------+----------------------------------------------------------------------------------------------+
| id | idRank | labelRank   | Description                                                                                  |
+----+--------+-------------+----------------------------------------------------------------------------------------------+
|  0 |      0 | Anonymous   | Un invite est un visiteur non inscrit                                                        |
|  1 |     16 | User        | Le membre est une personne ou un bot inscrit                                                 |
|  2 |     32 | Notificator | Le notificateur prévient le correcteur lorsqu'il suspect des erreurs                         |
|  3 |     48 | Corrector   | Le correcteur est habilité à proposer une solution lorsqu'une erreur est avérée              |
|  4 |     64 | Moderator   | Le modérateur dispose des droits en écriture sur le serveur pour appliquer les corrections   |
|  5 |    240 | Admin       | L'admin réalise la maintenance du système                                                    |
|  6 |    255 | Root        | System admin                                                                                 |
|  7 |     17 | Intel       | Le membre dispose des privileges pour acceder aux ressources de l'quipe Intel                |
|  8 |     18 | Pilot       | Le membre dispose des privileges pour acceder aux ressources de l'quipe Pilot                |
|  9 |     19 | RH          | Le membre dispose des privileges pour acceder aux ressources de l'quipe RH                   |
| 10 |     20 | Trainer     | Le membre dispose des privileges pour acceder aux ressources de l'quipe Formateur            |
| 11 |     21 | Architect   | Le membre dispose des privileges pour acceder aux ressources de l'quipe Architecte           |
| 12 |     22 | Developer   | Le membre dispose des privileges pour acceder aux ressources de l'quipe Developeur           |
| 13 |     23 | Pentester   | Le membre dispose des privileges pour acceder aux ressources de l'quipe Pentest              |
+----+--------+-------------+----------------------------------------------------------------------------------------------+


4. L'ajout d'un nouveau role peut se faire avec:

INSERT INTO `rank` VALUES (0,0,'Anonymous','Un invite est un visiteur non inscrit'),(1,16,'User','Le membre est une personne ou un bot inscrit'),(2,32,'Notificator','Le notificateur prévient le correcteur lorsqu\'il suspect des erreurs'),(3,48,'Corrector','Le correcteur est habilité à proposer une solution lorsqu\'une erreur est avérée'),(4,64,'Moderator','Le modérateur dispose des droits en écriture sur le serveur pour appliquer les corrections'),(5,240,'Admin','L\'admin réalise la maintenance du système'),(6,255,'Root','System admin'),(7,17,'Intel','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Intel'),(8,18,'Pilot','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Pilot'),(9,19,'RH','Le membre dispose des privileges pour acceder aux ressources de l\'quipe RH'),(10,20,'Trainer','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Formateur'),(11,21,'Architect','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Architecte'),(12,22,'Developer','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Developeur'),(13,23,'Pentester','Le membre dispose des privileges pour acceder aux ressources de l\'quipe Pentest');


Version 2 (En projet)

Avec cette version, l'attribution d'un role pour un utilisateur se fait en modifiant un masque de role pour l'utilisateur.

l'idRank du role dans la table membre. Ainsi, un utilisateur avec plusieurs roles aura plusieurs entrées dans la table membre.

Les idRank existant ne permettent pas d'utiliser de masque pour attribuer plusieurs role a un utilisateurs. Nous pouvons donc mettre a jour ces idRank en utilisant les bit du binaire:

------------------+

| id | idRank | labelRank   | Description                                                                                  |

+----+--------+-------------+----------------------------------------------------------------------------------------------+

|  0 |      0 | Anonymous   | Un invite est un visiteur non inscrit                                                        |

|  1 |     1 | User        | Le membre est une personne ou un bot inscrit                                                 |

|  2 |     10 | Notificator | Le notificateur prévient le correcteur lorsqu'il suspect des erreurs                         |

|  4 |     100 | Corrector   | Le correcteur est habilité à proposer une solution lorsqu'une erreur est avérée              |

|  8 |     1000 | Moderator   | Le modérateur dispose des droits en écriture sur le serveur pour appliquer les corrections   |

|  16 |    10000 | Admin       | L'admin réalise la maintenance du système                                                    |

|  32 |    100000 | Root        | System admin                                                                                 |

|  64 |    1000000 | Intel        | Le membre dispose des privileges pour acceder aux ressources de l'équipe Intel                                        |

|  128 |    10000000 | Pilote        | Le membre dispose des privileges pour acceder aux ressources de l'équipe Pilot                          |

|  256 |    100000000 | RH        |Le membre dispose des privileges pour acceder aux ressources de l'équipe RH          |

|  512 |    1000000000 | Formator        | Le membre dispose des privileges pour acceder aux ressources de l'équipe Formateur           |

|  1024 |    10000000000 | Architecte        | Le membre dispose des privileges pour acceder aux ressources de l'équipe Architecte     |

|  2048 |    100000000000 | Developer        | Le membre dispose des privileges pour acceder aux ressources de l'équipe Developeur      |

|  4096 |    1000000000000 | Pentest        | Le membre dispose des privileges pour acceder aux ressources de l'équipe Pentest        |

+----+--------+-------------+----------------------------------------------------------------------------------------------+


Script sql:

insert into rank value(0,0x0,'Anonymous','Un invite est un visiteur non inscrit');

insert into rank value(1,0x1,'User','Le membre est une personne ou un bot inscrit');

insert into rank value(2,0x2,'Notificator','Le notificateur prévient le correcteur lorsqu\'il suspect des erreurs');

insert into rank value(4,0x4,'Corector','Le correcteur est habilité à proposer une solution lorsqu\'une erreur est avérée');

insert into rank value(8,0x8,'Moderator','Le modérateur dispose des droits en écriture sur le serveur pour appliquer les corrections');

insert into rank value(16,0x10,'Admin','L\'admin réalise la maintenance du système ');

insert into rank value(32,0x20,'Root','System admin');

insert into rank value(64,0x40,'Intel','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Intel');

insert into rank value(128,0x80,'Pilote','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Pilot');

insert into rank value(256,0x100,'RH','Le membre dispose des privileges pour acceder aux ressources de l\'équipe RH');

insert into rank value(512,0x200,'Formateur','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Formateur');

insert into rank value(1024,0x400,'Architecte','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Architecte');

insert into rank value(2048,0x800,'Developeur','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Developeur');

insert into rank value(4096,0x1000,'Pentest','Le membre dispose des privileges pour acceder aux ressources de l\'équipe Pentest');