Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough répond à un problème précis : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Ce guide part des objets réels — MCP, OAuth, PKCE, resource indicator, access token — et cherche une décision vérifiable, pas une formule générique.
Le problème concret : MCP face à OAuth
Un système exploitable commence par une question simple : qui décide, sur quelles preuves, et que peut-on annuler ?
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c11 part de OAuth et traite PKCE comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à resource indicator de produire un résultat observable avant que access token puisse déclencher l’effet attendu autour de MCP. La décision finale reste bornée par resource indicator et MCP : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c11 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme OAuth en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester PKCE, la fixture mcp-autorisation-audience-pkce-c11 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à resource indicator.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c12 part de PKCE et traite resource indicator comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à access token de produire un résultat observable avant que MCP puisse déclencher l’effet attendu autour de OAuth. L’exploitation surveille alors la transition entre access token et MCP, tandis que la sécurité vérifie que OAuth ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de MCP échoue, le rollback restaure la configuration liée à OAuth, rejoue mcp-autorisation-audience-pkce-c12 et compare le nouvel état au témoin produit par PKCE. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à resource indicator, à une condition concrète et à une preuve plutôt qu’à une formule générale.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c13 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. La décision finale reste bornée par MCP et PKCE : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c13 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme resource indicator en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester access token, la fixture mcp-autorisation-audience-pkce-c13 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à MCP.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c14 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. L’exploitation surveille alors la transition entre OAuth et PKCE, tandis que la sécurité vérifie que resource indicator ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de PKCE échoue, le rollback restaure la configuration liée à resource indicator, rejoue mcp-autorisation-audience-pkce-c14 et compare le nouvel état au témoin produit par access token. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à MCP, à une condition concrète et à une preuve plutôt qu’à une formule générale.

Échecs plausibles, signaux et diagnostic
La difficulté réelle apparaît lorsque le comportement nominal rencontre les droits, les erreurs et la production.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c21 part de PKCE et traite resource indicator comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à access token de produire un résultat observable avant que MCP puisse déclencher l’effet attendu autour de OAuth. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à resource indicator, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par access token et OAuth : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c21 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme PKCE en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c22 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. Pour tester access token, la fixture mcp-autorisation-audience-pkce-c22 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à MCP. L’exploitation surveille alors la transition entre MCP et OAuth, tandis que la sécurité vérifie que PKCE ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de OAuth échoue, le rollback restaure la configuration liée à PKCE, rejoue mcp-autorisation-audience-pkce-c22 et compare le nouvel état au témoin produit par resource indicator.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c23 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à MCP, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par OAuth et resource indicator : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c23 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme access token en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c24 part de MCP et traite OAuth comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à PKCE de produire un résultat observable avant que resource indicator puisse déclencher l’effet attendu autour de access token. Pour tester OAuth, la fixture mcp-autorisation-audience-pkce-c24 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à PKCE. L’exploitation surveille alors la transition entre PKCE et resource indicator, tandis que la sécurité vérifie que access token ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de resource indicator échoue, le rollback restaure la configuration liée à access token, rejoue mcp-autorisation-audience-pkce-c24 et compare le nouvel état au témoin produit par MCP.

Déploiement progressif et retour arrière
Le bon design sépare ce que le modèle propose de ce que l’application autorise et vérifie.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c31 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. Si la vérification de OAuth échoue, le rollback restaure la configuration liée à PKCE, rejoue mcp-autorisation-audience-pkce-c31 et compare le nouvel état au témoin produit par resource indicator. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à access token, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par MCP et PKCE : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c31 est présenté comme limite ou hypothèse, jamais comme fait acquis.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c32 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme access token en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester MCP, la fixture mcp-autorisation-audience-pkce-c32 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à OAuth. L’exploitation surveille alors la transition entre OAuth et PKCE, tandis que la sécurité vérifie que resource indicator ne reçoit ni autorité implicite ni donnée excédentaire.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c33 part de MCP et traite OAuth comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à PKCE de produire un résultat observable avant que resource indicator puisse déclencher l’effet attendu autour de access token. Si la vérification de resource indicator échoue, le rollback restaure la configuration liée à access token, rejoue mcp-autorisation-audience-pkce-c33 et compare le nouvel état au témoin produit par MCP. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à OAuth, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par PKCE et access token : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c33 est présenté comme limite ou hypothèse, jamais comme fait acquis.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c34 part de OAuth et traite PKCE comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à resource indicator de produire un résultat observable avant que access token puisse déclencher l’effet attendu autour de MCP. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme OAuth en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester PKCE, la fixture mcp-autorisation-audience-pkce-c34 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à resource indicator. L’exploitation surveille alors la transition entre resource indicator et access token, tandis que la sécurité vérifie que MCP ne reçoit ni autorité implicite ni donnée excédentaire.

- Étape 1 — Configurer MCP, exécuter la vérification
mcp-autorisation-audience-pkce-step-1, puis conserver le résultat observable avant de passer à la suite. - Étape 2 — Configurer OAuth, exécuter la vérification
mcp-autorisation-audience-pkce-step-2, puis conserver le résultat observable avant de passer à la suite. - Étape 3 — Configurer PKCE, exécuter la vérification
mcp-autorisation-audience-pkce-step-3, puis conserver le résultat observable avant de passer à la suite. - Étape 4 — Configurer resource indicator, exécuter la vérification
mcp-autorisation-audience-pkce-step-4, puis conserver le résultat observable avant de passer à la suite. - Étape 5 — Configurer access token, exécuter la vérification
mcp-autorisation-audience-pkce-step-5, puis conserver le résultat observable avant de passer à la suite. - Étape 6 — Configurer MCP, exécuter la vérification
mcp-autorisation-audience-pkce-step-6, puis conserver le résultat observable avant de passer à la suite.
Trois pannes et corrections
- Entrée refusée trop tard : déplacer le contrôle avant l’effet externe.
- Preuve absente : journaliser un identifiant de décision sans secret.
- Rollback partiel : restaurer configuration et autorisation, puis rejouer le test témoin.
Critères de décision pour la production
Le point de départ n’est pas une fonctionnalité, mais une frontière de décision observable.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c41 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. L’exploitation surveille alors la transition entre OAuth et PKCE, tandis que la sécurité vérifie que resource indicator ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de PKCE échoue, le rollback restaure la configuration liée à resource indicator, rejoue mcp-autorisation-audience-pkce-c41 et compare le nouvel état au témoin produit par access token. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à MCP, à une condition concrète et à une preuve plutôt qu’à une formule générale.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c42 part de MCP et traite OAuth comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à PKCE de produire un résultat observable avant que resource indicator puisse déclencher l’effet attendu autour de access token. La décision finale reste bornée par PKCE et access token : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c42 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme MCP en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester OAuth, la fixture mcp-autorisation-audience-pkce-c42 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à PKCE.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c43 part de OAuth et traite PKCE comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à resource indicator de produire un résultat observable avant que access token puisse déclencher l’effet attendu autour de MCP. L’exploitation surveille alors la transition entre resource indicator et access token, tandis que la sécurité vérifie que MCP ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de access token échoue, le rollback restaure la configuration liée à MCP, rejoue mcp-autorisation-audience-pkce-c43 et compare le nouvel état au témoin produit par OAuth. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à PKCE, à une condition concrète et à une preuve plutôt qu’à une formule générale.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c44 part de PKCE et traite resource indicator comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à access token de produire un résultat observable avant que MCP puisse déclencher l’effet attendu autour de OAuth. La décision finale reste bornée par access token et OAuth : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c44 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme PKCE en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester resource indicator, la fixture mcp-autorisation-audience-pkce-c44 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à access token.

Frontières de confiance autour de PKCE
Un système exploitable commence par une question simple : qui décide, sur quelles preuves, et que peut-on annuler ?
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c51 part de MCP et traite OAuth comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à PKCE de produire un résultat observable avant que resource indicator puisse déclencher l’effet attendu autour de access token. Pour tester OAuth, la fixture mcp-autorisation-audience-pkce-c51 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à PKCE. L’exploitation surveille alors la transition entre PKCE et resource indicator, tandis que la sécurité vérifie que access token ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de resource indicator échoue, le rollback restaure la configuration liée à access token, rejoue mcp-autorisation-audience-pkce-c51 et compare le nouvel état au témoin produit par MCP.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c52 part de OAuth et traite PKCE comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à resource indicator de produire un résultat observable avant que access token puisse déclencher l’effet attendu autour de MCP. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à PKCE, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par resource indicator et MCP : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c52 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme OAuth en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c53 part de PKCE et traite resource indicator comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à access token de produire un résultat observable avant que MCP puisse déclencher l’effet attendu autour de OAuth. Pour tester resource indicator, la fixture mcp-autorisation-audience-pkce-c53 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à access token. L’exploitation surveille alors la transition entre access token et MCP, tandis que la sécurité vérifie que OAuth ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de MCP échoue, le rollback restaure la configuration liée à OAuth, rejoue mcp-autorisation-audience-pkce-c53 et compare le nouvel état au témoin produit par PKCE.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c54 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à access token, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par MCP et PKCE : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c54 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme resource indicator en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver.

Préparer l’état de départ et les prérequis
La difficulté réelle apparaît lorsque le comportement nominal rencontre les droits, les erreurs et la production.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c61 part de OAuth et traite PKCE comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à resource indicator de produire un résultat observable avant que access token puisse déclencher l’effet attendu autour de MCP. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme OAuth en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester PKCE, la fixture mcp-autorisation-audience-pkce-c61 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à resource indicator. L’exploitation surveille alors la transition entre resource indicator et access token, tandis que la sécurité vérifie que MCP ne reçoit ni autorité implicite ni donnée excédentaire.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c62 part de PKCE et traite resource indicator comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à access token de produire un résultat observable avant que MCP puisse déclencher l’effet attendu autour de OAuth. Si la vérification de MCP échoue, le rollback restaure la configuration liée à OAuth, rejoue mcp-autorisation-audience-pkce-c62 et compare le nouvel état au témoin produit par PKCE. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à resource indicator, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par access token et OAuth : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c62 est présenté comme limite ou hypothèse, jamais comme fait acquis.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c63 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme resource indicator en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester access token, la fixture mcp-autorisation-audience-pkce-c63 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à MCP. L’exploitation surveille alors la transition entre MCP et OAuth, tandis que la sécurité vérifie que PKCE ne reçoit ni autorité implicite ni donnée excédentaire.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c64 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. Si la vérification de PKCE échoue, le rollback restaure la configuration liée à resource indicator, rejoue mcp-autorisation-audience-pkce-c64 et compare le nouvel état au témoin produit par access token. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à MCP, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par OAuth et resource indicator : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c64 est présenté comme limite ou hypothèse, jamais comme fait acquis.

Exécuter la procédure et observer le résultat
Le bon design sépare ce que le modèle propose de ce que l’application autorise et vérifie.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c71 part de PKCE et traite resource indicator comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à access token de produire un résultat observable avant que MCP puisse déclencher l’effet attendu autour de OAuth. La décision finale reste bornée par access token et OAuth : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c71 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme PKCE en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester resource indicator, la fixture mcp-autorisation-audience-pkce-c71 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à access token.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c72 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. L’exploitation surveille alors la transition entre MCP et OAuth, tandis que la sécurité vérifie que PKCE ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de OAuth échoue, le rollback restaure la configuration liée à PKCE, rejoue mcp-autorisation-audience-pkce-c72 et compare le nouvel état au témoin produit par resource indicator. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à access token, à une condition concrète et à une preuve plutôt qu’à une formule générale.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c73 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. La décision finale reste bornée par OAuth et resource indicator : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c73 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme access token en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver. Pour tester MCP, la fixture mcp-autorisation-audience-pkce-c73 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à OAuth.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c74 part de MCP et traite OAuth comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à PKCE de produire un résultat observable avant que resource indicator puisse déclencher l’effet attendu autour de access token. L’exploitation surveille alors la transition entre PKCE et resource indicator, tandis que la sécurité vérifie que access token ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de resource indicator échoue, le rollback restaure la configuration liée à access token, rejoue mcp-autorisation-audience-pkce-c74 et compare le nouvel état au témoin produit par MCP. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à OAuth, à une condition concrète et à une preuve plutôt qu’à une formule générale.
Élément de preuve : PHP documente que pHP 8.5 adds the URI extension, pipe operator, clone-with syntax and additional language/runtime improvements. Cette source est utilisée ici pour cadrer exécuter la procédure et observer le résultat, pas pour remplacer le test local. [S7]Contrôles à conserver après la mise en service
Le point de départ n’est pas une fonctionnalité, mais une frontière de décision observable.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c81 part de resource indicator et traite access token comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à MCP de produire un résultat observable avant que OAuth puisse déclencher l’effet attendu autour de PKCE. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à access token, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par MCP et PKCE : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c81 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme resource indicator en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c82 part de access token et traite MCP comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à OAuth de produire un résultat observable avant que PKCE puisse déclencher l’effet attendu autour de resource indicator. Pour tester MCP, la fixture mcp-autorisation-audience-pkce-c82 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à OAuth. L’exploitation surveille alors la transition entre OAuth et PKCE, tandis que la sécurité vérifie que resource indicator ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de PKCE échoue, le rollback restaure la configuration liée à resource indicator, rejoue mcp-autorisation-audience-pkce-c82 et compare le nouvel état au témoin produit par access token.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c83 part de MCP et traite OAuth comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à PKCE de produire un résultat observable avant que resource indicator puisse déclencher l’effet attendu autour de access token. Ce niveau de détail rend « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough » révisable : chaque affirmation opérationnelle renvoie à OAuth, à une condition concrète et à une preuve plutôt qu’à une formule générale. La décision finale reste bornée par PKCE et access token : ce qui n’est pas démontré par le scénario mcp-autorisation-audience-pkce-c83 est présenté comme limite ou hypothèse, jamais comme fait acquis. Cette séquence répond au besoin suivant : Construire un flux MCP HTTP où chaque jeton est lié à la ressource visée et ne peut pas être relayé vers un autre service. Elle transforme MCP en point de décision vérifiable, avec une entrée nommée et une sortie que l’équipe peut conserver.
Dans « Sécuriser l’autorisation MCP : audience des jetons, PKCE et refus du token passthrough », le scénario mcp-autorisation-audience-pkce-c84 part de OAuth et traite PKCE comme une frontière explicite plutôt que comme une hypothèse implicite. Le premier contrôle demande à resource indicator de produire un résultat observable avant que access token puisse déclencher l’effet attendu autour de MCP. Pour tester PKCE, la fixture mcp-autorisation-audience-pkce-c84 inclut volontairement un état valide et un état refusé ; le refus doit arriver avant toute modification attribuée à resource indicator. L’exploitation surveille alors la transition entre resource indicator et access token, tandis que la sécurité vérifie que MCP ne reçoit ni autorité implicite ni donnée excédentaire. Si la vérification de access token échoue, le rollback restaure la configuration liée à MCP, rejoue mcp-autorisation-audience-pkce-c84 et compare le nouvel état au témoin produit par OAuth.
Élément de preuve : Model Context Protocol documente que for HTTP authorization, MCP requires resource-bound tokens, server-side audience validation and PKCE, and forbids insecure token passthrough patterns. Cette source est utilisée ici pour cadrer contrôles à conserver après la mise en service, pas pour remplacer le test local. [S8]Checklist opérationnelle
- Le contrôle autour de MCP a une entrée, une règle, un refus et une preuve.
- Le contrôle autour de OAuth a une entrée, une règle, un refus et une preuve.
- Le contrôle autour de PKCE a une entrée, une règle, un refus et une preuve.
- Le contrôle autour de resource indicator a une entrée, une règle, un refus et une preuve.
- Le contrôle autour de access token a une entrée, une règle, un refus et une preuve.
Sources et points de contrôle
- [S1] RFC 9700: Best Current Practice for OAuth 2.0 Security — RFC 9700 updates OAuth 2.0 security practice, including exact redirect URI matching and avoiding open redirectors and insecure legacy patterns. source
- [S2] Transports - Model Context Protocol — MCP defines stdio and Streamable HTTP transports; Streamable HTTP deployments need Origin validation, safe local binding and authentication. source
- [S3] Agents - OpenAI Agents SDK — An Agent combines instructions, tools and optional runtime behavior such as handoffs, guardrails and structured outputs. source
- [S4] Tools - OpenAI Agents SDK — The SDK distinguishes hosted tools, local execution tools, function tools and agents-as-tools, each with different trust and execution boundaries. source
- [S5] Model context protocol (MCP) - OpenAI Agents SDK — MCP integrations can expose remote or local tools; the documentation recommends trusted servers, least-privilege credentials and approvals for sensitive operations. source
- [S6] PostgreSQL 18 OAuth Authorization/Authentication — PostgreSQL 18 documents OAuth client authentication concepts and terminology for clients such as libpq and psql. source
- [S7] PHP 8.5 Release Announcement — PHP 8.5 adds the URI extension, pipe operator, clone-with syntax and additional language/runtime improvements. source
- [S8] Authorization - Model Context Protocol — For HTTP authorization, MCP requires resource-bound tokens, server-side audience validation and PKCE, and forbids insecure token passthrough patterns. source
- [S9] Running agents - OpenAI Agents SDK — Run configuration controls model setup, guardrails, handoff behavior, tracing, tool execution and conversation state. source
- [S10] Tracing - OpenAI Agents SDK — Tracing records model generations, tool calls, handoffs, guardrails and custom events, and sensitive payload capture can be disabled. source





Commentaires
Aucun commentaire publié pour le moment.
Connectez-vous pour commenter