Aller au contenu

Gérer les utilisateurs

Réglages → Administration. L’onglet ne s’affiche que pour un compte qui a le rôle admin ; Inscriptions ouvertes explique d’où vient ce rôle et pourquoi l’onglet peut être absent.

Chaque compte de l’instance a sa ligne, du plus ancien au plus récent :

Colonne Contenu
Utilisateur le nom d’utilisateur, le nom complet et l’adresse e-mail, avec (vous) sur votre ligne
Rôle Admin ou Utilisateur
Sécurité 2FA active ou 2FA inactive, avec un bouclier coché ou barré
Créé le la date d’ouverture du compte
Dernière connexion la date de la session la plus récente, et le nombre de sessions encore ouvertes
Clés API le nombre de ses clés qui n’ont pas été révoquées
Comptes le nombre de comptes de patrimoine qu’il possède
Opérations le nombre d’opérations sur l’ensemble de ces comptes

Une session compte tant que son jeton de rafraîchissement n’est ni révoqué ni expiré : ce chiffre est donc celui des sessions encore ouvertes, pas celui de toutes les connexions passées. Un compte qui ne s’est jamais connecté affiche Jamais.

Sous le rôle de chacun des autres comptes réels, une seule action est possible : Nommer admin pour un utilisateur ordinaire, Retirer admin pour un administrateur. Chacune demande une confirmation qui rappelle le nom d’utilisateur. Un administrateur peut faire tout ce que vous faites dans cet onglet, y compris vous retirer le rôle.

Deux changements sont refusés :

  • Votre propre rôle. Vous ne pouvez pas changer votre propre rôle. Demandez à un autre administrateur de le faire.
  • Le dernier administrateur. Le dernier administrateur ne peut pas redevenir simple utilisateur.

C’est aussi la marche à suivre pour un administrateur qui veut partir : nommez quelqu’un d’autre, puis supprimez votre propre compte depuis Réglages → Données.

La corbeille, au bout de chaque ligne, demande une confirmation qui rappelle le nom d’utilisateur, puis supprime le compte avec tout ce qu’il contient. C’est irréversible, et rien n’est exporté au passage : si les données comptent, faites d’abord un export depuis la session de ce lecteur.

Deux suppressions sont refusées d’emblée :

  • La vôtre. Vous ne pouvez pas supprimer votre propre compte ici. Pour supprimer votre compte, passez par Réglages → Données, qui vous demande votre mot de passe.
  • Le dernier administrateur. Impossible de supprimer le dernier administrateur.

À chaque démarrage, l’application compte les administrateurs. S’il n’y en a aucun, elle promeut le plus ancien compte de l’instance et l’indique dans docker compose logs app :

Promoted "<username>" to admin (no admin existed)

C’est ainsi qu’une installation à un seul lecteur, antérieure à cet écran, finit par avoir un administrateur. Si la base n’est pas encore démarrée, la vérification est sautée sans bloquer le démarrage, et elle recommence au démarrage suivant.

Route Ce qu’elle fait
GET /api/admin/users le tableau ci-dessus
PUT /api/admin/users/:id/role { "role": "admin" } ou "user", avec les trois refus
DELETE /api/admin/users/:id une suppression, avec les deux refus
GET /api/admin/settings les deux interrupteurs de cet onglet
PUT /api/admin/settings modifie l’interrupteur envoyé

Les cinq répondent 403 Réservé à l'administrateur à tout autre compte, quelle que soit la session.