J'essaie de mettre en œuvre la gestion des sessions dans mon service REST. J'ai pris connaissance de ces directives en surfant sur :
-
Ne pas utiliser de sessions côté serveur - cela viole le principe RESTful.
-
Utilisation de l'authentification HTTP de base - Impossible pour le moment, car on me demande de ne pas utiliser SSL/TLS (qui est sans doute nécessaire pour l'authentification de base).
-
Utilisation de Http digest - J'ai entendu dire que cela augmentait le trafic réseau. Cela semble coûteux, surtout lorsque mon client est un appareil mobile.
-
Utilisation des cookies - On me dit que je ne devrais jamais me fier aux cookies pour sécuriser mes ressources importantes, car ils peuvent être facilement usurpés. De plus, j'ai lu des articles sur les attaques de scripting intersites par le biais des cookies.
-
Il me reste l'option de générer un jeton d'authentification, que l'utilisateur doit envoyer à chaque fois - ce qui, je l'admets, n'est pas "entièrement" RESTful.
J'ai maintenant besoin de savoir comment générer ces jetons d'authentification uniques, qui sont suffisamment sûrs au niveau de l'entreprise ? Existe-t-il une bibliothèque pour Jersey ? Devrais-je opter pour OAuth ? J'ai lu quelques articles à leur sujet, sont-ils utiles dans mon cas ? N'oubliez pas que mes clients cibles sont des appareils mobiles - peuvent-ils accéder à un service OAuth ?