pismile

Bonnes pratiques de sécurité

Secrets, PKCE, validation des jetons, sessions et actions sensibles — ce qu'il faut faire avant d'accepter de vrais utilisateurs.

3 min de lecture · Mis à jour le · API v1

Connectez-vous pour voir vos propres identifiants sandbox dans les exemples.

pismile garantit que l'utilisateur est bien titulaire de l'alias. Votre application doit garantir que personne ne peut se faire passer pour lui _après_ la connexion. Voici les règles à respecter.

Le secret client#

  • Côté serveur uniquement. Jamais dans une application mobile, une page JavaScript, un dépôt Git ou une capture d'écran.

  • Dans une variable d'environnement ou un gestionnaire de secrets, avec une valeur distincte pour chaque environnement.

  • Régénérez-le dès qu'un doute existe : départ d'un développeur, fuite, poste perdu. L'ancien cesse de fonctionner immédiatement.

Le flux de connexion#

Protection

Pourquoi

En pratique

PKCE (S256)

Un code intercepté devient inutilisable

Activé dans tous nos guides

state

Empêche un attaquant de vous connecter à _son_ compte (CSRF)

Généré et vérifié par votre bibliothèque

nonce

Empêche de rejouer un ancien jeton d'identité

Généré et vérifié par votre bibliothèque

Adresses de redirection exactes

Un code ne peut être envoyé qu'à vous

Adresses https complètes, jamais de joker

Le jeton d'identité#

Utilisez une bibliothèque OIDC reconnue : elle vérifie pour vous la signature (https://pismile.com/oauth2/jwks), l'émetteur (iss = https://pismile.com), le destinataire (aud = votre client_id), l'expiration (exp) et le nonce. Ne décodez jamais un jeton « à la main » sans vérifier sa signature.

Vos comptes utilisateurs#

  • Identifiez vos utilisateurs par sub, jamais par leur nom. Voir Scopes et claims.

  • Régénérez l'identifiant de session juste après la connexion, pour éviter la fixation de session.

  • Cookies de session : Secure, HttpOnly et SameSite=Lax.

  • Échappez le nom à l'affichage, comme toute donnée externe.

Actions sensibles#

Pour un retrait, un changement de bénéficiaire, une signature ou une modification de compte, exigez une confirmation récente :

  • envoyez max_age (par exemple 300 secondes) ou prompt=login ;

  • vérifiez auth_time côté serveur avant d'exécuter l'action.

Le détail est dans Forcer une nouvelle vérification.

Journaux#

  • Ne journalisez jamais un secret, un code d'autorisation, un jeton d'accès ou un jeton d'identité.

  • Journalisez plutôt le sub, la date et le résultat de chaque connexion : c'est suffisant pour enquêter.

Signaler une faille#

Vous pensez avoir trouvé une vulnérabilité dans pismile ? Écrivez à support@pismile.com en précisant « Sécurité » dans l'objet. Merci de nous laisser le temps de corriger avant toute publication.

Cette page vous a-t-elle aidé ?