Collez les métadonnées, pas des secrets ou jetons de production. L’outil ne contacte pas le fournisseur et ne confirme ni inscription du client ni redirections autorisées.
Fonctionne localement dans votre navigateurUtilisez le code d'autorisation avec PKCE pour les clients de navigateur et mobiles. Ce vérificateur local ne peut pas confirmer l'enregistrement du fournisseur, rediriger les listes d'autorisation URI, la politique de consentement ou le comportement du jeton en direct.
Collez le JSON renvoyé par /.well-known/openid-configuration, cliquez sur Inspecter la configuration OIDC et lisez les constats : la page nomme les champs dont dépend un client public en Authorization Code et sépare les problèmes bloquants des points à vérifier. Les champs client ID et redirect URI sont facultatifs et ne font que préciser cette vérification locale.
Le bouton PKCE tire 48 octets aléatoires, les condense avec SHA-256 et affiche le vérificateur de code, le challenge S256 et une valeur state. Tout se passe dans cet onglet via l’API Web Crypto ; les métadonnées collées ne partent ni vers KivTools ni vers le fournisseur d’identité.
L’inspecteur lit les champs dont dépend un client navigateur ou mobile : issuer, authorization_endpoint et token_endpoint doivent être des URL absolues — HTTPS en production, HTTP uniquement sur une adresse de bouclage — et jwks_uri doit être annoncé pour permettre la vérification des signatures de jetons. response_types_supported doit contenir code et grant_types_supported doit contenir authorization_code pour le flux Authorization Code.
Le champ qui pèse le plus pour un client public est code_challenge_methods_supported. Sans PKCE, un code d’autorisation intercepté sur un mobile ou via un schéma d’URL propre peut être échangé par celui qui l’a capté ; une annonce qui ne propose que plain, ou qui omet le champ, est donc traitée ici comme bloquante et non comme un avertissement.
Générer l’ensemble PKCE tire 48 octets aléatoires de crypto.getRandomValues, les encode en base64url et affiche le vérificateur de 64 caractères. Le challenge S256 est le base64url du condensat SHA-256 de ce vérificateur — 43 caractères — et la valeur state est de 24 octets aléatoires, 32 caractères, à comparer au retour de redirection du fournisseur.
Utilisez S256 : le challenge voyage dans la demande d’autorisation, le vérificateur reste dans votre client jusqu’à la requête de jeton, et un code intercepté entre les deux ne peut pas être échangé. La méthode plain envoie le vérificateur lui-même dans l’URL ; c’est pourquoi un document qui ne prend en charge que plain termine ici sur un constat bloquant.
Le document est lu exactement tel qu’il a été collé. La page ne peut pas dire si le fournisseur a enregistré votre client, si l’URI de redirection figure sur sa liste, quel écran de consentement voit l’utilisateur, ni si les endpoints se comportent comme annoncé : cela demande une vraie demande d’autorisation auprès du fournisseur.
Un résultat sans constat signifie donc que les métadonnées copiées sont cohérentes pour un client public, pas que l’intégration fonctionne. Les flux réels, la durée de vie des jetons et le rafraîchissement restent à tester chez le fournisseur, et le contrôle de l’URI de redirection n’est ici qu’un rappel local de correspondance exacte.