Firefly : Guide de l'administrateur
Dernière version de ce document : 2001-02-19
Ce document est destiné aux utilisateurs de firefly disposant des droits administrateur.
Auteur :
Open Internet Center, Open Care,
oic@ocare.com.
Sommaire
1. Le système d'authentification de firefly
1.1 Système de sessions
Les connexions http étant de nature intermittente, un système de session
est nécessaire à l'identification de la personne connectée.
Firefly utilise un système courant : A la première connexion d'un utilisateur, une valeur
aléatoire est créée. Cette valeur est à la fois stockée dans la base de données côté
serveur, et dans un cookie dans le navigateur de l'utilisateur.
A chaque action dans firefly, le cookie est comparé à la table des sessions. Si une session
active correpondant au cookie est trouvée, on recharge le profil de l'utilisateur correspondant
à cette session.
Si aucune session valide ne correspond au cookie, l'accès à l'application est refusé et
l'utilisateur est redirigé vers la page de login.
1.2 Un login = une personne
A chaque personne correspond un et un seul identifiant (login). A cet identifiant sont asscociés
des profils de groupe et des profils personnels, donnant un niveau d'accès détermité à chaque
module.
L'identifiant unique de personne est enregistré dans la base à chaque ajout ou modification,
afin de tracer les interventions sur la base de données.
C'est pourquoi il est déconseillé de créer des logins "génériques" qui seraient utilisés par plusieurs
personnes. L'exemple type est le ou les administrateurs. Plutôt que de communiquer à
chacun le login et le mot de passe administrateur, il vaut mieux associer des droits d'administrateur
à leur login personnel.
1.3 Politique de sécurité
Firefly inclut plusieurs mécanismes de restriction à l'accès aux données.
- Au niveau des sessions, si on tente de visualiser les pages sans être passé par la page
de login, aucune donnée ne pourra s'afficher. De même si la personne connectée n'a pas
chargé une page après un temps déterminé : sa session est alors expirée.
- Les niveaux de droits associés à un login restreignent également les droits d'accès aux pages.
Si un utilisateur connecté n'a pas le droit d'intervenir sur cetaines parties du logiciel,
les liens associés ne s'afficheront pas, et saisir directement l'url dans le navigateur ne permet
pas de contourner cette restriction.
- Enfin, certaines données au sein même des pages ne s'afficheront que si l'utilisateur est
habilité à les visualiser ou à les modifier. Dans le module support, un client ne pourra voir que
les données correspondant à sa société (contacts, contrats, incidents).
Dans tous les cas, l'analyse des droits utilisateurs a lieu avant tout renvoi de données au
navigateur.
Les autres éléments intervenant dans la sécurité du système (serveur Apache, sgbd), ne font pas partie
du présent propos. Il appartient à l'administrateur système de s'assurer de la sécurité des serveurs.
Il est recommandé de ne pas permettre au navigateur client d'afficher le contenu des répertoires /include ;
Le SGBD ne doit répondre qu'à des clients identifiés (en l'occurence, le ou les serveurs apache sur le/lesquels
sont servis les scripts firefly).
Enfin, dans l'optique d'un accès externe à firefly, utiliser un serveur sécurisé (https) avec le module SSL
d'apache est une bonne option.
2. Ajouter des groupes
Les utilisateurs de firefly font partie de groupes de travail disposant chacun de différents niveau de droits
sur chaque application.
2.1 Ajouter un nouveau groupe
Dans le module admin (représenté par un méccano sur la barre horizontale des modules en haut de
la fenêtre firefly), il y a une liste des groupes existants. A l'installation de firefly, il n'existe
qu'un seul groupe, le groupe "admin".
Le lien "add new group" vous permet d'ajouter un nouveau groupe de travail.
Une fois avoir cliqué sur le lien, un formulaire vous demande de préciser un nom et une abréviation pour
ce nouveau groupe. Une fois ces champs renseignés, cliquez sur le bouton "Ajouter/Mettre à jour".
Attention : La liste des groupes n'est pas automatiquement rafraichie. En revanche, un formulaire "Profils pour
ce groupe" apparaît à la création. Vous y définirez les droits du groupe.
Pour modifier un groupe, cliquez sur le lien "Editer" approprié dans la liste des groupes.
2.2 Affecter des droits au groupe
La procédure est exactement la même qu'il s'agisse d'un groupe que vous venez de créer ou qu'il
s'agisse d'un groupe existant.
Si vous désirez modifier les droits d'un groupe, cliquez sur le lien "Editer" correspondant dans la liste
des groupes.
Une série de listes à choix multiples s'affiche, une par application.
Si vous désirez créer un groupe pour vos clients, vous pouvez leur donner des droits "Visiteur" et
"Client" dans le module support, "Client" dans le module contacts et "Lecteur" dans le module de
documentation.
Sous netscape/X11, un clic sélectionne un élément, un autre le déselectionne. Sous win32, il faut
maintenir la touche [ctrl] enfoncée pour effectuer des sélections multiples.
Une fois vos modifications effectuées, cliquez sur le bouton "Ajouter/Mettre à jour" situé sous
les listes.
Notez que les modifications sur les groupes existants se répercutent immédiatement sur les droits
des utilisateurs faisant partie de ces groupes.
Par conséquent, si vous retirez au groupe des administrateurs les droits sur le module admin, vous
ne pourrez plus rien faire dans le module d'administration, et le rétablissement de vos droits
d'administrateur ne pourra se faire que par intervention manuelle sur la base de données.
3. Ajouter des utilisateurs
Seuls des utilisateurs identifiés peuvent se connecter à firefly. Aussi, il est nécessaire d'affecter un
login à chaque personne que vous voulez autoriser à accéder au framework.
3.1 Ajouter un nouveau login
Dans le module d'administration, vous pouvez voir une rubrique "Rechercher un identifiant" en haut,
à gauche de la fenêtre. Cliquez sur le bouton "Ajouter un identifiant", puis sur le lien du
même nom en haut de la liste des identifiants.
Un formulaire apparaît : Renseignez le champ "identifiant" et les deux champs "mot de passe",
avec le même mot de passe. Cliquez ensuite sur un des deux liens "société" ou "contact" afin de
rechercher à qui vous voulez attribuer cet identifiant.
Remarque : les sociétés ou contacts possédant déjà un login n'apparaîtront pas dans les
résultats de la recherche.
Dans la liste des personnes ou sociétés trouvées, cliquez sur celle qui vous intéresse. Enfin, vous
pouvez confirmer l'ajout par un clic sur le bouton "ajouter".
Le formulaire d'identifiant doit s'afficher.
Vous pouvez, dans la première partie de ce formulaire, redéfinir le mot de passe de la personne,
affecter la langue par défaut de l'application pour cette personne, ou modifier son identifiant.
Les utilisateurs peuvent redéfinir à tout moment leur mot de passe dans le module support,
qui est également le point d'entrée de firefly. Avertissez vos utilisateurs que ce changement est de leur
entière responsabilité.
Remarque sur les mots de passe : Les mots de passe ne sont pas stockés en clair dans la base
mais cryptés de manière non bijective. A moins d'utiliser un outil de décryptage par la méthode
brute, il n'y a pas de moyen de retrouver un mot de passe oublié. Dans ce cas, il faut le remplacer.
.
3.2 Affecter l'utilisateur à des groupes
Que ce soit un nouveau login ou un login nouvellement créé n'a pas d'importance. En bas du formulaire
de profils pour l'utilisateur que vous éditez figure une rubrique "Groupes de cet identifiant".
Il suffit de sélectionner le groupe auquel vous voulez affecter l'identifiant et de cliquer sur le bouton
"ajouter".
De la même façon, il suffit de cliquer sur le lien "retirer" qui figure à côté de
chaque groupe pour exclure l'identifiant de ce groupe. Le lien "editer" vous permet de visualiser, et
d'éditer le cas échéant les profils du groupe en question.
3.3 Définir des droits personnalisés
La démarche est exactement la même que pour les profils des groupes : Une série de listes
à choix multiples par application. Vous pouvez ici déterminer des droits spécifiques à l'identifiant,
qui ne seraient pas accordés par l'appartenance à ses groupes de travail.
Les droits finaux d'un identifiant sont ceux de ses groupes ajoutés à ses droits personnalisés.
4. Ajouter ou modifier les références
Un certain nombre de données de référence sont stockées dans des tables de la base de données, et
peuvent être modifiées directement dans le module d'administration.
Certaines de ces données étant nécessaires au fonctionnement de firefly, il est recommandé de procéder
aux modifications avec la plus grande prudence. D'une manière générale, une fois que firefly est entré en
phase de production, les références existantes, parce que les autres données de la base y font elles-même
référence, ne doivent pas être modifiées.
4.1 Modifier les références non critiques
Dans le module d'administration, cliquez sur le lien "Référence" dans le menu de gauche. Un formulaire
"Edition des champs de référence" doit s'afficher.
Le contenu des références qui ne sont pas des niveaux de droits n'est pas critique pour le fonctionnement
de firefly. En revanche, leur existence l'est. C'est pourquoi il n'y a pas de formulaire de suppression
de référence.
Pour éditer une référence, cliquez d'abord sur le nom du type de référence (par exemple "Document"),
puis sur la référence à éditer. Vous pouvez alors modifier la référence en question dans le champ
textuel en-dessous, puis valider en cliquant sur le bouton du même nom.
A nouveau, si votre base de données est en production, évitez de changer un nom de référence par un
autre au sens différent.
Le lien "ajouter" permet d'ajouter une référence du même type, ainsi, on peut imaginer d'autres
types d'adresse, de téléphones, de documents, etc.
Des références demandent des détails :
- Les pays ont deux champs supplémentaires, un code étant le code de langue utilisé par les navigateurs
internet (browsers), et l'autre le préfixe téléphonique international.
- Les options de contrat sont munis d'une case à cocher indiquant si c'est une option unique (case décochée)
ou pouvant être prise plusieurs fois. La référence "Contacts Nommés Supplémentaires" est
utilisée pour la logique de firefly et sa modification doit se limiter aux fautes d'orthographe ou à une
traduction.
Une référence particulière est le type d'entité. Elle est utilisée dans la logique de la base de données
et ne doit généralement pas être modifiée du tout.
4.2 Comment modifier les niveaux de droits
Etant stockés dans la base de donnée pour des raisons pratiques, les niveaux de droits sont disponibles à
la modification dans le module d'administration.
Ces niveaux sont en relation avec du code "en dur" dans les scripts. Leur ajout ou modification n'a lieu
qu'en cas de mise à jour ou d'ajout d'un nouveau module à firefly.
5. Administration du support
Cette rubrique est destinée à l'administrateur du support technique, seul habilité à ajouter un nouveau produit
à la liste des produits supportés, à ajouter ou modifier un contract de support dans la base, et à visualiser
les statistiques du support.
5.1 Ajouter des produits/plateformes
Dans le menu de gauche, sous la rubrique "ADMIN", cliquez sur le lien "Produits". La table des produits
doit s'afficher.
- Ajouter un produit.
En bas du tableau, renseignez les champs "Nom" (ex : firefly, mysql);
"Type" (ex : Help desk software, web server, sgbd);
"Utilisateur" (ex : Administrateurs, développeurs, ingénieurs). Vous pouvez ajouter un bref commentaire
sur le produit.
Cliquez sur le bouton "Ajouter". Le produit figure maintenant dans la liste.
- Ajouter une plateforme.
La démarche est identique à celle des produits. Exemples : Linux-x86; Linux-Alpha; Solaris-Alpha; etc...
- Modifier un produit ou une plateforme.
A droite de chaque enregistrement produit ou plateforme figure un lien "Editer". Cliquez sur ce lien.
La ligne correspondant à l'enregistrement à éditer doit s'afficher en vidéo inverse,
les champs textuels sont alors pré-remplis. Effectuez les modifications désirées,
puis cliquez sur le bouton "Editer".
5.2 Ajouter/Modifier un contrat
Dans le menu de gauche, cliquez sur le lien "NOUVEAU...Contrat". Le formulaire d'ajout de contrat
s'affiche.
- Informations générales.
Souscrit par : La société signataire du contrat. Cliquez sur l'icone "torche" à droite du champ textuel.
Effectuez la recherche de la companie signataire (ou ajoutez-la si elle n'est pas encore dans la base
de données), puis dans la liste des résultats, cliquez sur la flèche bleue afin de renseigner le champ.
Type de contrat : Indiquez ici le type de contrat. La liste des types de contrats est stockée
dans le fichier de configuration du support.
Numéro de contrat : Un numéro administratif sans incidence sur le fonctionnement de la base.
Choisissez un numéro en cohérence avec votre système interne de classement.
Dates de signature, d'effet et de fin : Fiwées par défaut à la date courante. Il suffit par exemple
d'indiquer l'année actuelle +1 pour créer un contrat souscrit aujourd'hui et expirant dans un an.
- Détails du contrat.
C'est ici que vous ajoutez les produits supportés dans le contrat. Un produit de contrat est une combinaison
d'un produit sur une plateforma particulière.
Utilisez les deux listes déroulantes pour créer une combinaison Produit/Plateforme, puis cliquez sur
le bouton "Ajouter un produit". Un produit est ajouté à la liste. Pour le retirer en cas d'erreur,
cliquez sur le lien "Annuler".
- Options du contrat.
Indiquez ici les différentes options souscrites par le client. Comme vu plus haut, ces options sont de deux
types : Uniques (sous la forme d'une case à cocher) ou multiples (sous la forme d'un champ numérique).
Une fois le contrat défini, cliquer sur "Save" enregistrera le contrat dans la base.
Vérifiez vos entrées ! Une fois enregistré, le contrat ne peut plus être supprimé. Le seul moyen de
l'invalider est alors de spécifier une date de fin expirée.
- Définir les contacts nommés.
Un Contact Nommé est une personne identifiée de la société cliente, habilitée à appeler le centre de
support et à soumettre le cas échéant des incidents par internet.
Une ligne vous indique le nombre de contacts nommés restant à inscrire, et une liste déroulante vous permet
de les sélectionner. Le bouton "Ajouter un contact" vous permet d'affecter la personne au contrat.
Si les contacts de la société ne sont pas dans la liste, ou si aucune liste n'apparaît, il vous faudra
ajouter ces contacts par le module "contacts".
- Editer un contrat.
Utilisez le lien "Modifier le contrat" situé en bas de la feuille de détails de contrat.
La démarche est la même que pour un ajout. Cependant, deux rubriques ne sont pas modifiables : Le
type de contrat et la société contractante.
5.3 Statistiques et récapitulatifs
Quelques statistiques sont disponibles dans la rubrique "ADMIN", en cliquant sur le lien "Statistiques".
Sélectionnez la période à visualiser en haut de la fenêtre, puis choisissez une rubrique.
Contrat : Le nombre d'incidents et la durée totale d'occupation des techniciens support pour la
période considérée.
Le lien "envoyer un mail" pré-rédige un courrier électronique de récapitulatif des incidents pour la
période. Note : Le bouton "envoyer" ne fonctionne pas avec Outlook. Utilisez le copier-coller avec ce
logiciel de client mail.
Technicien : Nombre d'incidents et durée d'occupation pour chaque technicien support.
Graphiques : Affiche les données précédentes sous forme d'histogrammes, ainsi qu'un graphique
en secteurs indiquant le nombre d'incident par produit (ce qui permet d'identifier les produits qui
nécessitent le plus d'interventions).