Je n'arrive pas à trouver exactement ce que je dois implémenter pour utiliser une méthode d'authentification personnalisée avec mon application Web Spring Security. J'ai une application Grails avec le plugin Spring Security qui utilise actuellement l'authentification utilisateur/mot de passe standard avec un formulaire de navigateur. Cela fonctionne correctement.Création d'une authentification personnalisée avec Acegi/Spring Security
Je dois mettre en place un mécanisme à côté de celui qui implémente un type d'authentification MAC. Si la requête HTTP contient plusieurs paramètres (par exemple un identifiant d'utilisateur, un horodatage, une signature, etc.), je dois prendre ces paramètres, effectuer des hachages et des comparaisons de signature/d'horodatage, puis authentifier l'utilisateur.
Je ne suis pas sûr à 100% par où commencer. Quelles classes de sécurité Spring dois-je étendre/implémenter? J'ai lu le Reference Documentation et ai une bonne compréhension des concepts, mais je ne suis pas vraiment sûr si j'ai besoin d'un filtre ou d'un fournisseur ou d'un gestionnaire, ou où/comment créer exactement des objets Authentication. J'ai essayé d'étendre AbstractProcessingFilter et/ou de mettre en œuvre AuthenticationProvider, mais je me fais juste comprendre comment je les fais tous bien jouer.
Je pense que vous devez utiliser la position PRE_AUTH_FILTER au lieu de AUTHENTICATION_PROCESSING_FILTER. Vous pouvez également consulter ce didacticiel pour une implémentation de l'authentification dans Google App Engine: http://blog.springsource.com/2010/08/02/spring-security-in-google-app-engine/ – Tal