/oauth/token/oauth/par/userinfo
Vérifier le certificat client
Le réseau de périphérie du client effectue des validations qui dépendent du type de certificat client attendu. Pour éviter les problèmes de sécurité courants et les pièges fréquents, utilisez si possible une bibliothèque de validation de certificats reconnue. Si le certificat client ne réussit pas la validation, le comportement attendu dépend de l’installation et n’entre pas dans le cadre du présent document.Certificats signés par une autorité de certification
Lorsqu’un certificat est signé par une autorité de certification, sa chaîne de confiance doit être vérifiée, y compris le certificat racine. Le certificat peut aussi être comparé à une liste d’autorisation ou de rejet afin de s’assurer qu’il est enregistré et n’a pas été révoqué. Nous vous recommandons de ne pas utiliser une autorité de certification publique pour signer vos certificats client, car cela pourrait accroître le risque d’usurpation de vos applications clientes.Certificats auto-signés
Les certificats auto-signés ne reposent pas sur une chaîne de confiance; il n’est donc pas possible de vérifier une chaîne de certificats. À la place, l’empreinte du certificat peut être comparée à une base de données de certificats enregistrés ou transmise directement à Auth0 pour qu’Auth0 effectue cette vérification.Transférer la requête
Une fois le certificat vérifié, les requêtes sont transférées avec plusieurs en-têtes spéciaux provenant du client vers le même endpoint de la cible de transfert du domaine personnalisé sur le réseau de périphérie d’Auth0. La requête transférée doit inclure les en-têtes suivants :-
La clé API du domaine personnalisé dans l’en-tête
cname-api-key. -
Le certificat client dans l’en-tête
client-certificate. Remarque : Comme les en-têtes HTTP doivent être du texte, le certificat doit être converti en PEM encodé comme composant d’URL. La valeur de l’en-tête est limitée à 4096 octets. Par conséquent, seul le premier certificat de la chaîne doit être transféré à Auth0. -
L’état de vérification par l’autorité de certification du certificat client dans l’en-tête
client-certificate-ca-verified. L’en-têteclient-certificate-ca-verifiedpeut avoir les valeurs suivantes :- SUCCESS : indique que le certificat client est valide et a été vérifié par une autorité de certification.
- FAILED: indique que le certificat client présenté est valide, mais que la chaîne de confiance du certificat n’a PAS été vérifiée par une autorité de certification. Autrement dit, il s’agit d’un certificat auto-signé. Peut inclure une raison d’échec facultative.
client-certificate-ca-verified:FAILED. Selon la valeur de cet en-tête, Auth0 sait quelle méthode d’authentification du client a été utilisée et quels identifiants du client doivent être vérifiés.