Aller au contenu principal

Guide de l'Administrateur

Ce guide est destiné aux administrateurs du Portail iTop. Il couvre les fonctionnalités avancées telles que la gestion des comptes utilisateurs, la synchronisation avec iTop, la configuration des tâches cron, et la personnalisation de l'apparence du portail avec AdminLTE.

Introduction

Le Portail iTop sert d'interface conviviale pour interagir avec les capacités ITSM d'iTop. En tant qu'administrateur, vous êtes responsable de la gestion des comptes utilisateurs, de la synchronisation des données entre le portail et iTop, et de la personnalisation de l'apparence du portail pour correspondre à l'image de marque de votre organisation.

Principe de Connexion

Le portail se connecte à iTop exclusivement via le Webservice, garantissant un accès sécurisé et contrôlé. Toutes les opérations déclenchées depuis le portail sont effectuées par l'utilisateur du Webservice. Cependant, lors de l'ajout de journaux aux tickets, il est essentiel de les signer avec le nom de l'utilisateur (par exemple, "Jean Dupont a écrit :"). Cela nécessite que chaque compte du portail soit lié à un compte utilisateur iTop.

info

Assurez-vous que chaque utilisateur du portail dispose d'un compte utilisateur iTop correspondant pour maintenir un suivi et un audit précis. Le lien est établi par l'attribut itop_id dans la table Users. Page de connexion

attention

L'utilisateur du Webservice appelant le service web iTop doit avoir le profil spécifique Utilisateur du Service Rest. Page de connexion

Création de Comptes Utilisateurs

Il existe deux méthodes principales pour créer des comptes utilisateurs : depuis iTop ou de zéro.

Depuis iTop

Vous pouvez importer des enregistrements de Contact depuis iTop dans le portail. À partir de ces enregistrements de Contact, vous pouvez générer :

  1. Un compte utilisateur iTop.
  2. Un compte utilisateur du portail.

Une fois généré, l'utilisateur peut se connecter et utiliser le portail.

Étapes :

  1. Accédez à la section "Créer un Utilisateur" dans le panneau d'administration (Administration --> Compte --> Créer un utilisateur [iTop]). Page de connexion
  2. Sélectionnez Importer depuis iTop.
  3. Choisissez le contact pour lequel vous souhaitez créer un compte.
  4. Cliquez sur Créer un Compte.

Vérifiez les trois statuts : Compte Local, Présent dans iTop, et Compte Distant (compte iTop). Page de connexion

De Zéro

Si la personne est entièrement nouvelle (aucun Contact existant dans iTop), il est recommandé de la créer directement dans le portail. Cela vous permet de :

  1. Générer l'enregistrement de Contact dans iTop.
  2. Créer le compte utilisateur iTop.
  3. Créer le compte utilisateur du portail.

Étapes :

  1. Accédez à la section "Créer un Utilisateur" dans le panneau d'administration (Administration --> Compte --> Créer un utilisateur [iTop])
  2. Cliquez sur Nouveau.
  3. Remplissez les détails de l'utilisateur (nom, email, etc.) et validez.
  4. Sélectionnez le nouvel utilisateur créé et cliquez sur Créer un Compte.
  5. Le système générera automatiquement les enregistrements nécessaires dans iTop et le portail. Vérifiez les trois statuts : Compte Local, Présent dans iTop, et Compte Distant (compte iTop).

Synchronisation des Organisations et des Lieux

Pour éviter des appels fréquents au Webservice pour des requêtes SELECT simples, notamment parce que les données organisationnelles changent rarement, le portail synchronise les Organisations et les Lieux depuis iTop. Cela permet également un enrichissement des données si nécessaire. La synchronisation peut être effectuée manuellement ou automatisée via une tâche cron. Synchronisation Manuelle :

  1. Dans le panneau d'administration, allez à Synchronisation.
  2. Sélectionnez Organisations ou Lieux.
  3. Cliquez sur Importer depuis iTop pour déclencher la synchronisation.

Avantages :

  • Réduit la charge sur le Webservice.
  • Permet une mise en cache locale et un enrichissement des données.

Configuration d'une Tâche Cron pour une Synchronisation Automatique

Pour automatiser les tâches de synchronisation, vous pouvez configurer une tâche cron sur votre serveur Linux. Cela garantit que les données restent à jour sans intervention manuelle.

Exemple de Configuration Cron

Créez un fichier cron (par exemple, portal-itop) avec le contenu suivant :

* * * * * www-data cd /path_to_the_portal/ && php artisan schedule:run >> /dev/null 2>&1 

chemin_vers_le_portail peut être, par exemple, /var/www/itop-portal/. Cette tâche cron s'exécute toutes les minutes et déclenche le planificateur de Laravel, qui vérifie si des tâches programmées (comme la synchronisation) doivent être exécutées.

Tâches Programmées dans Laravel

Les tâches sont définies dans routes/console.php. Par exemple :

app(Schedule::class)->command('ItopOrg:sync', [1])->daily('15:10'); 
app(Schedule::class)->command('ItopLoc:sync', [1])->daily('15:15');
  • ItopOrg:sync : Synchronise les Organisations quotidiennement à 15:10.
  • ItopLoc:sync : Synchronise les Lieux quotidiennement à 15:15.

Note : Ajustez le timing et la fréquence selon vos besoins. Assurez-vous que les commandes sont correctement définies dans votre application Laravel.

Personnalisation de l'Apparence du Portail

L'apparence du portail peut être personnalisée pour correspondre à l'image de marque de votre organisation. Cela inclut le changement des logos et des schémas de couleurs.

Le portail utilise AdminLTE pour son interface frontend. La personnalisation du logo est gérée dans config/adminlte.php.

Logo Principal

'logo' => '<b>Portal</b> iTop', 
'logo_img' => 'img/itop-logo-square.png',
'logo_img_class' => 'brand-image img-circle elevation-3',
'logo_img_xl' => null,
'logo_img_xl_class' => 'brand-image-xs',
'logo_img_alt' => 'iTop Logo',

Mettez à jour 'logo_img' => 'chemin/vers/votre/logo.png' pour utiliser votre logo personnalisé.

Logo de la page de connexion

'auth_logo' => [ 
'enabled' => false,
'img' => [ 'path' => 'img/itop-logo-square.png',
'alt' => 'iTop Logo',
'class' => '',
'width' => 50,
'height' => 50,
],
],
  • Définissez 'enabled' => true et mettez à jour 'path' => 'path/to/auth-logo.png' pour afficher un logo personnalisé sur la page de connexion.
  • Si 'enabled' => false, le logo principal sera utilisé sur la page d'authentification.

Logo du Préchargeur

'preloader' => [ 'enabled' => true, 
'mode' => 'cwrapper',
'img' => [ 'path' => 'img/itop-logo-square.png',
'alt' => 'AdminLTE Preloader Image',
'effect' => 'animation__shake',
'width' => 60,
'height' => 60,
],
],
  • Personnaliser l'image du préchargeur en chageant 'path' => 'path/to/preloader.png'.

Changer les couleurs du site

Puisque le portail utilise AdminLTE, la personnalisation des couleurs se fait via les variables SCSS dans /resources/vendor/admin-lte/built/scss/_bootstrap-variables.scss. Exemple (passage à un thème bleu):

$blue: #007bff !default; 
$indigo: #6610f2 !default;
$purple: #6f42c1 !default;
$pink: #e83e8c !default;
$red: #dc3545 !default;
$orange: #fd7e14 !default;
$yellow: #ffc107 !default;
$green: #28a745 !default;
$teal: #20c997 !default;
$cyan: #17a2b8 !default;
$itop-portal: #28B4E6 !default;
$itop: #EA7D1E !default;

$primary: $itop-portal !default;
$secondary: $gray-600 !default;
$success: $green !default;
$info: $cyan !default;
$warning: $yellow !default;
$danger: $red !default;
$light: $gray-100 !default;
$dark: $gray-800 !default;

Après avoir modifié le fichier SCSS, il faut recompiler les assets :

npm run dev 

Une version en bleu : Login page

Tip: Pour une personnalisation plus avancée, vous pouvez vous réferez à AdminLTE documentation et Laravel Mix documentation.

Ergonomie générale

Le portail est construit avec le package AdminLTE de Jeroennoten, qui offre une interface d’administration réactive et personnalisable. Vous pouvez personnaliser davantage l’ergonomie du portail en tirant parti des options de configuration d’AdminLTE.

  • Options de mise en page: Ajustez le comportement de la barre latérale, le mode sombre, etc., dans config/adminlte.php.
  • Surcharges CSS: Ajoutez du CSS personnalisé dans resources/sass/app.scss pour un style précis.

Pour plus de détails, consultez le répertoire GitHub AdminLTE AdminLTE GitHub repository et sa documentation.