Fait avec Chinaski

Permissions

Permissions

Chinaski a deux rôles pour les personnes qui se connectent à la zone admin (admin et editor) plus des limites fines que vous pouvez poser sur chaque compte d'éditeur : quels types de contenu ils gèrent et dans quelles langues ils travaillent. Il n'y a pas d'autres rôles.

Admins et éditeurs

  • Les admins peuvent tout faire : gestion des utilisateurs, builds, réglages, clés API, et tout le contenu indépendamment des restrictions ci-dessous.
  • Les éditeurs obtiennent un accès staff à la zone admin mais ne peuvent jamais gérer les utilisateurs ni changer les réglages système, et leur accès à chaque type de contenu ou langue peut être resserré avec les deux champs de restriction ci-dessous.

Un compte tout neuf (créé par un admin, ou auto-enregistré quand l'auto-inscription est activée) commence toujours comme editor. Seul un admin peut promouvoir quelqu'un au rang d'admin, et un garde-fou défensif refuse de laisser le dernier admin actif se rétrograder : cela verrouillerait tout le monde hors de la gestion des utilisateurs.

Délimiter les éditeurs par type de contenu

Sur la page de compte de chaque éditeur (Users → Edit) il y a un champ Allowed content types : une liste séparée par des virgules des types de contenu qu'il peut gérer : pages, posts, blocks, snippets, documents, catégories, formulaires, media, nav items, stacks, design tokens et redirects. Laissez vide pour aucune restriction.

Comment cela prend effet :

  • Tout ce qui est hors de la liste est indisponible pour cet éditeur : il ne peut ni voir ni muter les sections verrouillées, et tenter l'URL le renvoie au dashboard avec un message d'erreur.
  • Les stacks sont un cas à souligner : un éditeur sans les stacks dans sa liste ne peut même pas voir les listes de stacks.
  • Les valeurs invalides ou mal typées sont silencieusement écartées quand l'admin sauvegarde ; elles ne verrouillent personne par accident.

Délimiter les éditeurs par langue

Le champ Allowed languages sur la même page prend une liste de codes de langue séparés par des virgules (ex. en, es). Cela fonctionne exactement de la même manière : vide signifie sans restriction, les valeurs invalides s'écartent silencieusement.

Si un éditeur édite en espagnol uniquement :

  • La vue en langue espagnole est disponible et l'accès est vérifié pour créer et éditer des posts, des pages et d'autres contenus par langue configurée.
  • Les opérations en masse ne sondent ou ne changent que le contenu de cette langue autorisée.
  • Les imports JSON/CSV n'importent que les lignes dans leurs langues autorisées ; les lignes sont délimitées, pas silencieusement sautées plus tard.

Workflow de review

Si Require approval (Settings → Workflow) est activé, les éditeurs ne peuvent pas publier directement : une action de publication est convertie en action de soumission pour review, l'élément attend dans un statut pending, et un admin peut l'approuver et le publier ensuite. Un email de notification configuré dans les réglages reçoit une note à propos de l'événement de review.

À savoir aussi en délimitant les gens : quand un compte est suspendu, ou qu'un admin réinitialise le mot de passe de quelqu'un, toutes les sessions de cet utilisateur sont tuées immédiatement, si bien qu'une suspension est effective immédiatement, pas à la prochaine action admin.

Garde-fous de gestion des utilisateurs

  • Seuls les admins peuvent créer, éditer ou supprimer des utilisateurs.
  • Un mot de passe personnalisé doit faire au moins 8 caractères avec au moins une majuscule, une minuscule et un chiffre. (Le mot de passe de configuration initiale qui remplace le placeholder d'une installation neuve est plus strict : 12+ caractères plus majuscule/minuscule/chiffre.)
  • Changer un mot de passe invalide immédiatement les sessions existantes de cet utilisateur, de sorte que le nouveau mot de passe prenne effet à la prochaine connexion.

Accès API (hors comptes utilisateurs)

L'accès machine utilise des clés API : une fonctionnalité Settings entièrement séparée, jamais liée à un compte utilisateur. Chaque clé est nommée et créée avec la permission read ou write : la permission write est explicitement requise pour les opérations qui modifient le contenu, et une clé expirée ou en lecture seule est refusée sur les tentatives d'écriture. Un rate limiting par clé optionnel (100 requêtes par minute par défaut, configurable dans Settings) s'applique.

Premier démarrage

Une installation neuve démarre avec un mot de passe admin placeholder et redirige chaque requête vers /setup jusqu'à ce qu'un vrai mot de passe soit défini. Une fois défini, la page de configuration disparaît entièrement.

Lisez ce site en