Général:FAQ GestionUtilisateurs : Différence entre versions

De WikiFr_dbSQWare
Aller à : navigation, rechercher
m (Limites de cette section)
m (Identification du contrôleur de domaine)
 
(31 révisions intermédiaires par le même utilisateur non affichées)
Ligne 7 : Ligne 7 :
 
===Limites de cette section===
 
===Limites de cette section===
 
Ce chapitre ne traite que de la  gestion des utilisateurs de l'interface web de dbsqware, et que le module SQWareWeb est sur un socle déjà paramétré et fonctionnel.<br>
 
Ce chapitre ne traite que de la  gestion des utilisateurs de l'interface web de dbsqware, et que le module SQWareWeb est sur un socle déjà paramétré et fonctionnel.<br>
 
 
<p><span id="Example"></span>
 
</p>
 
<meta property="mw:PageProp/toc" />
 
<div class="mw-heading mw-heading2"><h2 id="Exemple">Exemple</h2></div>
 
<style data-mw-deduplicate="TemplateStyles:r5862541">.mw-parser-output table.ambox{margin:0 10%;width:unset;border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output table.ambox+table.ambox,.mw-parser-output table.ambox+link+table.ambox,.mw-parser-output table.ambox+style+table.ambox{margin-top:-1px}.mw-parser-output .ambox td.mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox th.mbox-text,.mw-parser-output .ambox td.mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox td.mbox-image{padding:2px 0 2px 0.5em}.mw-parser-output .ambox td.mbox-imageright{padding:2px 0.5em 2px 0}.mw-parser-output table.ambox-notice{border-left-color:#36c}.mw-parser-output table.ambox-speedy{background-color:#fee7e6}.mw-parser-output table.ambox-delete,.mw-parser-output table.ambox-speedy{border-left-color:#b32424}.mw-parser-output table.ambox-content{border-left-color:#f28500}.mw-parser-output table.ambox-style{border-left-color:#fc3}.mw-parser-output table.ambox-move{border-left-color:#9932cc}.mw-parser-output table.ambox-protection{border-left-color:#a2a9b1}html body.mediawiki .mw-parser-output .ambox.mbox-small{clear:right;float:right;margin:4px 0 4px 1em;box-sizing:border-box;width:238px;font-size:88%;line-height:1.25em}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;box-sizing:border-box;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}</style><table class="plainlinks ambox box-Update ambox-content ambox-Update metadata" role="presentation"><tbody><tr><td class="mbox-image"><div style="width:52px"><span typeof="mw:File"><span><img src="//upload.wikimedia.org/wikipedia/commons/thumb/9/9b/Gnome-appointment-soon.svg/45px-Gnome-appointment-soon.svg.png" decoding="async" width="45" height="45" class="mw-file-element" srcset="//upload.wikimedia.org/wikipedia/commons/thumb/9/9b/Gnome-appointment-soon.svg/68px-Gnome-appointment-soon.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/9/9b/Gnome-appointment-soon.svg/90px-Gnome-appointment-soon.svg.png 2x" data-file-width="48" data-file-height="48" /></span></span></div></td><td class="mbox-text"><div class="mbox-text-span">Certaines parties de cette page (celles relatives à Section) sont <b>obsolètes</b>. <div class="hide-when-compact" style="display:inline;">Elle a été écrite pour une version antérieure de MediaWiki et il est possible qu'elle ne s'applique plus à la dernière version. Si vous avez vérifié (ou mis à jour) cette page et que vous avez trouvé le contenu adapté, vous pouvez supprimer cette note.  </div></div></td></tr></tbody></table>
 
<p>Dans <a href="/wiki/Special:MyLanguage/Manual:Extension_registration" title="Special:MyLanguage/Manual:Extension registration">extension.json</a><span style="display:none"><a href="/wiki/Manual:Extension_registration" title="Manual:Extension registration"> </a></span>, déclarer les <a href="/wiki/Special:MyLanguage/Manual:Hooks" title="Special:MyLanguage/Manual:Hooks">accroches</a>&#160;:
 
</p>
 
<div class="mw-highlight mw-highlight-lang-json mw-content-ltr" dir="ltr"><pre><span></span><span class="err">...</span>
 
<span class="w">  </span><span class="nt">&quot;Hooks&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
 
<span class="w">      </span><span class="nt">&quot;ParserFirstCallInit&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;ExampleExtensionHooks&quot;</span>
 
<span class="w">  </span><span class="p">},</span>
 
<span class="w">  </span><span class="nt">&quot;HookHandlers&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
 
<span class="w">      </span><span class="nt">&quot;ExampleExtensionHooks&quot;</span><span class="p">:</span><span class="w"> </span><span class="p">{</span>
 
<span class="w">          </span><span class="nt">&quot;class&quot;</span><span class="p">:</span><span class="w"> </span><span class="s2">&quot;MediaWiki\\Extension\\ExampleExtension\\Hooks&quot;</span>
 
<span class="w">      </span><span class="p">}</span>
 
<span class="w">  </span><span class="p">}</span>
 
<span class="err">...</span>
 
</pre></div>
 
  
 
==MODOP général Ajout d'un utilisateur==
 
==MODOP général Ajout d'un utilisateur==
Ligne 68 : Ligne 48 :
 
Sur la machine dbsqware avec le compte dbsqware modifier le fichier /home/dbsqware/dbSQWare/SQWareWeb/custom/authentication_custom.php pour modifier si besoin les variables $lvsqw_ldaphost, $lvsqw_ldapport et  $lvsqw_ldapbind.<br>
 
Sur la machine dbsqware avec le compte dbsqware modifier le fichier /home/dbsqware/dbSQWare/SQWareWeb/custom/authentication_custom.php pour modifier si besoin les variables $lvsqw_ldaphost, $lvsqw_ldapport et  $lvsqw_ldapbind.<br>
 
<br>
 
<br>
<span style="color: green">dbsqware@vmsqwarebox</span><br>
+
<p span style="border: 1px solid silver; padding: 10px; background-color: #E8E8E8;">
<pre>
+
<span style="color: green">#From dbsqware@vmsqwarebox</span><br>
dbsqware@vmsqwarebox:/home/dbsqware/dbSQWare/SQWareWeb/custom $ vi authentication_custom.php
+
<br>
 
+
dbsqware@vmsqwarebox:/home/dbsqware/dbSQWare/SQWareWeb/custom $ vi authentication_custom.php<br>
...
+
...<br>
function gfsqw_connection_external_ad($lasqw_parameters)
+
function gfsqw_connection_external_ad($lasqw_parameters)<br>
{
+
{<br>
         $lvsqw_error = false;
+
         $lvsqw_error = false;<br>
         $lvsqw_errorMSG = "";
+
         $lvsqw_errorMSG = "";<br>
         $lvsqw_userName = $lasqw_parameters[0];
+
         $lvsqw_userName = $lasqw_parameters[0];<br>
         $lvsqw_password = $lasqw_parameters[1];
+
         $lvsqw_password = $lasqw_parameters[1];<br></span>
 
+
<br>
         // Server connection
+
         // Server connection<br>
 
+
<br>
         // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\
+
         // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\<br>
         //          Variables : $lvsqw_ldaphost
+
         //          Variables : $lvsqw_ldaphost<br>
         //                              $lvsqw_ldapport
+
         //                              $lvsqw_ldapport<br>
         //      To be adapted according to the company    /  Fr: A adapter selon l'entreprise
+
         //      To be adapted according to the company    /  Fr: A adapter selon l'entreprise<br>
         // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\
+
         // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\<br>
 
+
<br>
         $lvsqw_ldaphost = "srvaddsw01.domain.tld";          // /!\ EXAMPLE /!\
+
         $lvsqw_ldaphost = <span style="color: blue;">"srvaddsw01.domain.tld"</span>;          // /!\ EXAMPLE /!\<br>
         $lvsqw_ldapport = 389;                  // /!\ EXAMPLE /!\
+
         $lvsqw_ldapport = <span style="color: blue;">389</span>;                  // /!\ EXAMPLE /!\<br>
 
+
<br>
 
+
<br>
         $lvsqw_ldapconnect = ldap_connect($lvsqw_ldaphost, $lvsqw_ldapport);
+
         $lvsqw_ldapconnect = ldap_connect($lvsqw_ldaphost, $lvsqw_ldapport);<br>
         ldap_set_option($lvsqw_ldapconnect, LDAP_OPT_PROTOCOL_VERSION, 3);
+
         ldap_set_option($lvsqw_ldapconnect, LDAP_OPT_PROTOCOL_VERSION, 3);<br>
         ldap_set_option($lvsqw_ldapconnect, LDAP_OPT_REFERRALS, 0);
+
         ldap_set_option($lvsqw_ldapconnect, LDAP_OPT_REFERRALS, 0);<br>
 
+
<br>
         if($lvsqw_ldapconnect){
+
         if($lvsqw_ldapconnect){<br>
 
+
<br>
                 // Authentication
+
                 // Authentication<br>
 
+
<br>
                 // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\
+
                 // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\<br>
                 //          Example with '@dbsqware.ad'              /  Fr: Exemple avec '@dbsqware.ad'
+
                 //          Example with '@dbsqware.ad'              /  Fr: Exemple avec '@dbsqware.ad'<br>
                 //      To be adapted according to the company    /  Fr: A adapter selon l'entreprise
+
                 //      To be adapted according to the company    /  Fr: A adapter selon l'entreprise<br>
                 // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\
+
                 // /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\      /!\<br>
 
+
<br>
                 $lvsqw_ldapbind = ldap_bind($lvsqw_ldapconnect, $lvsqw_userName.'@domain.tld', $lvsqw_password);      // /!\ EXAMPLE /!\
+
                 $lvsqw_ldapbind = ldap_bind($lvsqw_ldapconnect, $lvsqw_userName.<span style="color: blue;">'@domain.tld'</span>, $lvsqw_password);      // /!\ EXAMPLE /!\<br>
 
+
<br>
...
+
...<br>
</pre>
+
</p></span>
 
<br>
 
<br>
  

Version actuelle datée du 16 août 2024 à 09:36

Généralités


Attention.png
Warning:
Avant toutes choses, n'allez pas plus loin si vous n'avez pas lu la section "Concepts dbSQWare" !.


Dans ce chapitre, on considèrera que SQWareWeb a été installé sur dbsqware@sqwarebox ...

Limites de cette section

Ce chapitre ne traite que de la gestion des utilisateurs de l'interface web de dbsqware, et que le module SQWareWeb est sur un socle déjà paramétré et fonctionnel.

MODOP général Ajout d'un utilisateur


Explication des différents type d'utilisateurs

Dans dbsqware vous pouvez créer et ajouter des utilisateurs de différents types :

  • des utilisateurs locaux
  • des utilisateurs de votre Active Directory
  • des utilisateurs API
  • des utilisateurs API Maj


Note.png
Note:
Pensez à vous connecter sur l'interface web dbsqware avec un compte ayant les privilèges admin pour faire les manipulations proposées.


Pour Ajouter ou Créer un utilisateur à se connecter : il faut aller sur l'interface web de dbsqware dans Administration (menu 1) Access (menu 2) Logins (menu 3).

En haut à droite vous cliquez sur le bouton Add.

Add_button


Création d'un utilisateur en local

Ce sont les utilisateurs standards de dbsqware, ils sont stocké au niveau du serveur MariaDB ou MySQL local de vmsqwarebox.


Ajout d'un utilisateurs Active Directory

Il y aura quelques informations et configurations nécessaires à cette configuration :

  • votre machine dbsqware doit pouvoir identifier les DC (Domain Controler) de votre domaine
    • soit en utilisant 1 DC ou plus en tant que server DNS
    • soit en utilisant comme serveur DNS un DNS ayant les enregistrements SRV pointant sur vos DC
  • votre machine dbsqware et vos DC doivent avoir une connectivité réseau sur les ports ldap utilisés dans votre infra (389 par défaut)
  • les utilisateurs doivent exister sur votre domaine


Identification du contrôleur de domaine

Sur la machine dbsqware avec le compte dbsqware modifier le fichier /home/dbsqware/dbSQWare/SQWareWeb/custom/authentication_custom.php pour modifier si besoin les variables $lvsqw_ldaphost, $lvsqw_ldapport et $lvsqw_ldapbind.

#From dbsqware@vmsqwarebox

dbsqware@vmsqwarebox:/home/dbsqware/dbSQWare/SQWareWeb/custom $ vi authentication_custom.php
...
function gfsqw_connection_external_ad($lasqw_parameters)
{
$lvsqw_error = false;
$lvsqw_errorMSG = "";
$lvsqw_userName = $lasqw_parameters[0];
$lvsqw_password = $lasqw_parameters[1];

// Server connection

// /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\
// Variables : $lvsqw_ldaphost
// $lvsqw_ldapport
// To be adapted according to the company / Fr: A adapter selon l'entreprise
// /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\

$lvsqw_ldaphost = "srvaddsw01.domain.tld"; // /!\ EXAMPLE /!\
$lvsqw_ldapport = 389; // /!\ EXAMPLE /!\


$lvsqw_ldapconnect = ldap_connect($lvsqw_ldaphost, $lvsqw_ldapport);
ldap_set_option($lvsqw_ldapconnect, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($lvsqw_ldapconnect, LDAP_OPT_REFERRALS, 0);

if($lvsqw_ldapconnect){

// Authentication

// /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\
// Example with '@dbsqware.ad' / Fr: Exemple avec '@dbsqware.ad'
// To be adapted according to the company / Fr: A adapter selon l'entreprise
// /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\ /!\

$lvsqw_ldapbind = ldap_bind($lvsqw_ldapconnect, $lvsqw_userName.'@domain.tld', $lvsqw_password); // /!\ EXAMPLE /!\

...


Ajout des utilisateurs sur l'interface web dbsqware

Pour autoriser l'utilisateur à se connecter : il faut aller sur l'interface web de dbsqware dans Administratation (menu 1) Access (menu 2) Logins (menu 3).

En haut à droite vous cliquez sur le bouton Add.

Add_button


Lors de la création de l'utilisateurs :

  • dans Authentification : choisir external_ad
  • dans User Name : mettre le login AD de votre utilisateur
  • dans surname et firstname : mettre les informations nécessaires pour différencier les utilisateurs.
  • dans comments : commentaires optionnels

add_user_faq


Cas d'un utilisateur API


Cas d'un utilisateur API MAJ


Utilisateur créé

A partir de là votre utilisateur peut se connecter mais il n'a pas encore de privilèges.
new_user


Si on le connecte l'interface n'a aucune option disponible, ni aucun lien. no_priv

MODOP général ajout de privilèges à utilisateur

Pour donner des droits à l'utilisateur : il faut aller sur l'interface web de dbsqware dans Administratation (menu 1) Access (menu 2) LoginsPrivs (menu 3).

En haut à droite vous cliquez sur le bouton Add.

Add_button


Lors de l'ajout de privilèges :

  • dans Grantee User Name : choisir votre nouvel utilisateur
  • dans Grantee Group Name : choisir le groupe qui correspond aux privilèges que vous voulez donner à cet utilisateur
  • dans comments : commentaires optionnels

LOGINSPRIVS


Une fois connecté votre utilisateur aura les droits sélectionnés

PRIVS_TRUE