Aller au contenu

Une action est refusée comme interdite

Symptom

Vous êtes connecté — les lectures fonctionnent — et une action renvoie 403. Ou chaque requête renvoie 401 et le tableau de bord vous redirige vers la connexion. Les deux sont des problèmes différents et la différence réside dans le numéro.

Diagnose

  1. 401 ou 403 ? 401 signifie que la plateforme ne sait pas qui vous êtes : le jeton est manquant, mal formé ou expiré. 403 signifie qu’elle sait exactement qui vous êtes et que la réponse est toujours non.
  2. Pour un 401 de l’API : vérifiez que la requête transporte Authorization: Bearer <token> et que le jeton n’a pas expiré. odysseus auth whoami et odysseus auth status répondent aux deux.
  3. Pour un 403 : sous quel rôle agissez-vous ? L’exécution et la construction sont des droits séparés à dessein — voir ce qu’un agent principal ne peut pas faire, qui énonce la même séparation pour les appelants automatisés.
  4. La ressource est-elle dans votre locataire ? Chaque enregistrement appartient à exactement un locataire, et une requête qui atteint l’enregistrement d’un autre locataire est refusée plutôt que de répondre de manière vide. Ce refus ressemble à un problème de permissions et constitue une frontière d’isolation — voir multilocation et isolation.
L'écran Utilisateurs dans le tableau de bord Odysseus, listant chaque compte avec le rôle qu'il détient et le locataire auquel il appartient — la vue qui répond si une action refusée l'a été à cause de l'identité de l'appelant plutôt que parce qu'il n'était pas connecté.

Resolve

  • 401 : reconnectez-vous, ou rafraîchissez le jeton. odysseus auth login en réémet un.
  • 403 sur une action que votre rôle ne porte pas : demandez le droit à l’administrateur de votre locataire, en nommant l’action plutôt que le rôle — les rôles diffèrent par ce qu’ils peuvent faire, pas par leur ancienneté.
  • 403 sur l’enregistrement d’un autre locataire : il n’y a pas de correction de ce côté ; l’enregistrement n’est pas le vôtre.

Prevent

Donnez aux appelants automatisés un principal avec exactement les droits dont leur travail a besoin. Un principal détenant à la fois le droit de construction et le droit d’exécution contourne discrètement la séparation, et rien ne le signale.