This is a machine translation based on the English version of the article. It might or might not have already been subject to text preparation. If you find errors, please file a GitHub issue that states the paragraph that has to be improved. |
1. Utilisateurs dans Checkmk
Une fois que votre système de supervision est suffisamment opérationnel pour être utile à d’autres, il est temps de vous pencher sur la fonction d’administration des utilisateurs dans Checkmk. Si vous utilisez le système seul, un seul utilisateur disposant des droits d’administrateur suffit amplement, et vous pouvez simplement passer au chapitre suivant consacré aux notifications.
Supposons donc que vous ayez des collègues qui sont censés travailler avec Checkmk à vos côtés, pourquoi ne pas simplement utiliser tous les noms d’utilisateur qui ont déjà été configurés ? Eh bien, cela est théoriquement possible, mais cela engendre un certain nombre de difficultés. Si, en revanche, vous créez un compte par personne, vous bénéficierez de plusieurs avantages :
Chaque utilisateur peut disposer d'autorisations individuelles.
Vous pouvez limiter la responsabilité d’un utilisateur à des ordinateurs hôtes et services spécifiques, de sorte que seuls ceux-ci soient visibles dans sa supervision.
Les utilisateurs peuvent créer leurs propres signets, configurer leur barre latérale individuellement et personnaliser d'autres paramètres selon leurs besoins.
Vous pouvez supprimer un compte lorsqu'un employé quitte l'entreprise sans que cela n'affecte les autres comptes.
Vous trouverez tous les détails qui vont au-delà de l'introduction de ce guide du débutant dans l'article consacré à l'administration des utilisateurs.
2. Rôles et autorisations
Nous aimerions examiner de plus près les deux points relatifs aux autorisations et aux responsabilités. Commençons par les autorisations, c'est-à-dire par la question de savoir qui est autorisé à faire quoi. À cette fin, Checkmk utilise le concept de rôles. Un rôle n'est rien d'autre qu'une collection d'autorisations. Chacune de ces autorisations permet d'effectuer une action spécifique. Par exemple, il existe une autorisation permettant de modifier les paramètres globaux.
Checkmk est fourni avec des rôles prédéfinis que vous attribuez à un nouvel utilisateur :
| Rôle | Abréviation | Description |
|---|---|---|
Administrateur |
|
Un administrateur peut effectuer toutes les fonctions dans Checkmk. Sa tâche principale est la configuration générale de Checkmk, et non la supervision. Cela inclut également la création d'utilisateurs et la personnalisation des rôles. |
Utilisateur de supervision standard |
|
Ce rôle est destiné à l'opérateur qui effectue la supervision proprement dite. En principe, l'opérateur ne devrait voir que les ordinateurs hôtes et les services dont il est responsable. De plus, il est possible que vous, en tant qu'administrateur, lui accordiez les autorisations nécessaires pour gérer ses propres ordinateurs hôtes. |
Utilisateur d'enregistrement d'agent |
|
Rôle spécial destiné à un utilisateur de l'automatisation pour effectuer l'enregistrement de l'agent Checkmk d'un ordinateur hôte auprès du serveur Checkmk avec un minimum de privilèges. |
Utilisateur invité |
|
Un utilisateur invité peut tout voir, mais ne peut rien modifier. Ce rôle est utile, par exemple, si vous souhaitez accrocher au mur un moniteur d'état qui affiche en permanence une vue d'ensemble de la supervision. Étant donné qu'un utilisateur invité ne peut rien modifier, il est également possible que plusieurs collègues utilisent simultanément un compte doté de ce rôle. |
Modèle vide pour les rôles à privilèges minimaux |
|
Ce rôle ne dispose d'aucune autorisation. Il n'est pas destiné à être attribué directement. Il peut en revanche être utilisé pour créer de nouveaux rôles dotés uniquement des autorisations minimales requises. |
Vous pouvez découvrir comment personnaliser les rôles prédéfinis dans l'article consacré à l'administration des utilisateurs.
3. Groupes de contact par domaine de responsabilité
Le deuxième aspect important de la gestion des utilisateurs est la définition des responsabilités.
Qui est responsable de l'ordinateur hôte mysrv024 , et qui est responsable du service Tablespace FOO sur l'ordinateur hôte ora012?
Qui doit voir l'ordinateur hôte et le service dans la supervision et éventuellement être averti en cas de problème?
Dans Checkmk, les responsabilités ne sont pas définies par des rôles, mais par des groupes de contact. Le terme « contact » est utilisé ici dans le sens de « notification » : Qui le système de supervision doit-il contacter en cas de problème ?
Le principe de base est le suivant :
Tout utilisateur peut être membre d’un nombre illimité de groupes de contact.
Chaque ordinateur hôte et chaque service est membre d’au moins un ou plusieurs groupes de contact.
Voici un exemple d’une telle attribution d’utilisateurs (à gauche) et d’ordinateurs hôtes (à droite) à des groupes de contact (au centre) :

Comme vous pouvez le constater, un utilisateur, un ordinateur hôte ou un service peut faire partie de plusieurs groupes de contact. L'appartenance à un groupe a les effets suivants :
Un utilisateur ayant le rôle d'Normal monitoring usereur voit exactement les objets dans la supervision qui se trouvent dans ses groupes de contact.
En cas de problème avec un ordinateur hôte ou un service, tous les utilisateurs appartenant à au moins un de ses groupes de contact sont notifiés (par défaut).
Il n’est pas possible dans Checkmk d’attribuer directement un ordinateur hôte ou un service à un utilisateur. Cette fonctionnalité a été intentionnellement omise, car une telle attribution directe entraîne des problèmes dans la pratique — par exemple, lorsqu’un collègue quitte votre entreprise. |
4. Création de groupes de contact
Pour gérer les groupes de contacts, procédez comme suit : Setup > Users > Contact groups. Un groupe de contacts nommé « all » et dont l'alias est « Everything » est déjà prédéfini. Tous les hôtes et services seront automatiquement affectés à ce groupe, qui est destiné aux configurations simples dans lesquelles il n'y a (pour l'instant) aucune répartition des tâches et dont vous aurez initialement l'entière responsabilité.
Avec Add group, vous créez un nouveau groupe de contact. Ici, vous avez besoin, comme d'habitude, de l'ID interne (Name) et du titre (Alias), qu'il est possible de modifier ultérieurement :

Dans l'exemple ci-dessus, vous pouvez voir un nouveau groupe de contact qui, sans surprise, devrait être responsable des serveurs Windows et Linux.
5. Attribution des ordinateurs hôtes
Une fois que vous avez créé tous vos groupes de contacts, vous devrez attribuer d'une part des hôtes et des services, et d'autre part des utilisateurs. Vous effectuez cette dernière opération dans les propriétés des utilisateurs eux-mêmes — nous y reviendrons dans une section ultérieure.
Il existe deux façons d’attribuer des hôtes à des groupes de contacts, que vous pouvez également choisir d’utiliser en parallèle : via des règles ou via les propriétés des hôtes ou de leurs dossiers.
5.1. Attribution à l'aide de règles
Le jeu de règles requis s'appelle « Assignment of hosts to contact groups ». Vous le trouverez, par exemple, sur la page « Contact groups » que vous avez ouverte dans la section précédente, dans le menu « Contact groups > Rules ».
À noter que même sur une nouvelle installation de Checkmk, le jeu de règles n’est pas vide.
Vous y trouverez une règle qui affecte tous les ordinateurs hôtes au groupe de contact « Everything » (all) mentionné ci-dessus.
Créez donc ici vos propres nouvelles règles et, en fonction de la condition, sélectionnez les hôtes que vous souhaitez affecter au(x) groupe(s) de contact(s) correspondant(s) :

Important : si plusieurs règles s'appliquent à un ordinateur hôte, elles seront toutes évaluées et l'ordinateur hôte sera ainsi affecté à plusieurs groupes de contacts.
5.2. Affectation à l'aide des propriétés de l'ordinateur hôte
Ouvrez les propriétés de l'ordinateur hôte, par exemple via Setup > Hosts > Hosts. Cliquez sur l'ordinateur hôte pour afficher la page Properties of host. Dans la case Basic settings, cochez la case à cocher Permissions.

Sélectionnez un ou plusieurs groupes de contacts dans la liste « Available » et déplacez-les vers la liste « Selected » à l'aide de la flèche droite. Cochez la case à cocher « Add these contact groups to the host ».
En général, vous n’avez pas besoin de cocher la case à cocher « Always add host contact groups also to its services », car les services héritent automatiquement des groupes de contacts de leurs ordinateurs hôtes. Vous en apprendrez davantage à ce sujet dans la section suivante.
Remarque : vous pouvez définir l'attribut « Permissions » de la même manière au niveau du dossier plutôt qu'au niveau de l'ordinateur hôte. Pour un dossier, certaines options supplémentaires sont disponibles concernant l'application des autorisations aux sous-dossiers.
6. Attribution des services
Vous ne devez attribuer des services à des groupes de contacts que si ceux-ci diffèrent de ceux de leurs ordinateurs hôtes. Toutefois, un principe de base important s'applique à cet égard : dès lors qu'un service a été explicitement attribué à au moins un groupe de contacts, il n'hérite plus des groupes de contacts de son ordinateur hôte.
Une attribution au niveau de service vous permet, par exemple, de séparer les opérations liées au serveur et celles liées aux applications.
Par exemple, placez l’ordinateur hôte srvwin123 dans le groupe de contacts Windows & Linux servers, mais placez tous ses services commençant par le préfixe Oracle dans le groupe de contacts Oracle administration. Cela signifie que les administrateurs Windows ne verront pas les services Oracle et que, inversement, les administrateurs Oracle n’auront pas accès aux détails des services du système d’exploitation — ce qui constitue souvent une séparation pratique.
Si vous n’avez pas besoin de cette séparation, contentez-vous simplement des affectations pour les ordinateurs hôtes — et le tour est joué.
L'ensemble de règles « Assignment of services to contact groups » est chargé de l'affectation au niveau de service. Lors de la création de la règle, procédez de la même manière que celle décrite dans la section précédente pour l'affectation des ordinateurs hôtes. De plus, vous spécifiez des conditions pour les noms des services.
7. Création d'utilisateurs
Accédez à l'administration des utilisateurs via Setup > Users > Users :

Ne soyez pas surpris si, outre l'entrée cmkadmin, il existe également un autre utilisateur agent_registration.
Il s'agit d'un utilisateur de l'automatisation destiné à l'accès à distance, par exemple via un script ou l'API REST.
Vous créez un nouvel utilisateur à l'aide du bouton « Add user » sur la page portant ce même titre :

Dans la case « Identity », saisissez l’ID interne (Username) et un titre — ici, l’Full name de l’utilisateur. Les champs « Email address » et « Pager address » sont facultatifs et servent respectivement aux notifications par courrier électronique et par SMS.
Ne saisissez pas d'adresse électronique ici pour l'instant. Lisez d'abord les remarques du chapitre consacré aux notifications. |

Dans la case « Security », conservez le paramètre par défaut « Normal user login with password » et attribuez uniquement un mot de passe initial. Par défaut, le mot de passe d’un compte utilisateur local doit comporter au moins 12 caractères. Ceci est défini par Global settings > User management > Password policy for local accounts.
Au bas de la section « Roles », vous pouvez attribuer des rôles à l'utilisateur. Si vous attribuez plusieurs rôles, l'utilisateur bénéficie simplement des autorisations maximales de ces rôles — bien que cela n'ait pas beaucoup de sens compte tenu du petit nombre de rôles prédéfinis.

Sous Contact Groups, vous pouvez désormais sélectionner l’un des groupes de contacts créés précédemment. Si vous sélectionnez le groupe prédéfini Everything, l’utilisateur sera responsable de tout, car tous les ordinateurs hôtes et services sont inclus dans ce groupe.
À noter que les deux dernières cases de cette page — Personal settings et Interface settings — contiennent exactement les mêmes paramètres que ceux qu’un utilisateur peut modifier dans son profil via le menu User > Edit profile. Les utilisateurs invités (ayant le rôle Guest user) ne peuvent pas modifier ces paramètres dans leur profil.
Sur la page d'aperçu de l'administration des utilisateurs Users, vous trouverez l'entrée LDAP & Active Directory dans le menu Related. Si vous utilisez Active Directory ou un autre service LDAP au sein de votre organisation, vous aurez également la possibilité d'inclure des utilisateurs et des groupes provenant de ces services. Vous trouverez plus de détails à ce sujet dans l'article consacré au LDAP/Active Directory. |
