Web SSO utilisant Java et SAML 2.0 [fermé]
je voudrais écrire une application web qui fait l'authentification à L'aide de jetons SAML 2.0, émis par un fournisseur d'identité. Je comprends, d'après ce question, qu'il y a une solution viable dans le monde PHP en utilisant simpleSAMLphp.
Est-il une méthode équivalente dans le monde Java? Existe-t-il des solutions et/ou des tutoriels communs servlet
des conteneurs ou des serveurs d'application?
6 réponses
vous pouvez essayer le projet OpenSAML; il fournit une bibliothèque Java pour la création et la validation des tokens SAML.
Vous pouvez prendre un coup d'oeil à 2 produits:
- JOSSO: http://www.josso.org
- OpenAM, qui est une fourchette de L'OpenSSO de Sun depuis que Oracle a décidé de le tuer: http://forgerock.com/openam.html
tous deux ont une liste de fonctionnalités assez impressionnante et offrent une large liste d'agents SSO.
le principal avantage de l'approche agent est que vous n'avez pas à vous soucier dans votre demande processus d'authentification tel qu'il est géré par l'agent et l'infrastructure de L'OSP.
si vous voulez développer votre propre fournisseur de services SAML2, OpenSAML est la solution. L'inconvénient est que cette bibliothèque n'est pas bien documentée. Néanmoins, vous devriez trouver facilement quelques tutoriels sur OpenSAML sur le web.
Vous pouvez l'implémenter par exemple comme un filtre de servlet, afin que votre code d'application ne soit pas lié à SAML.
ayant récemment implémenté l'authentification SAML pour une application, j'ai trouvé l'information la plus utile dans le document D'aperçu technique OASIS SAML2. Il est très lisible et contient des exemples réels des messages XML qui sont passés.
la Section 5.1 décrit l'interaction entre le fait que votre application (fournisseur de services ou SP) demande l'authentification à un fournisseur d'identité à distance. (IDP.)
fournir une réponse plus à jour puisque cela n'a pas été visité depuis un certain temps:
si vous faites un projet de printemps déjà j'ai eu du succès avec Spring Security SAML. Vous n'avez pas besoin de sécuriser votre application avec Spring Security pour utiliser L'extension SAML, mais cela la rend un peu plus facile.
Tout ce dont vous avez besoin est à l' OpenSSO site OpenAM comme successeur.