由于工作原因需要选择一个支持SAML2.0的idp与现有的web应用集成,最初打算学习CAS和shibboleth,但是很让人失望,也不知道到底有没有人成功集成过CAS+Shibboleth的SAML2.0认证,反正我是没成功。最不可思议的是,shibboleth cas server的手册居然四五年没更新(从2012-09-19),难道这四五年里就没有人尝试过吗?再加上实在是没有时间去研究这么浮躁的东西,注意,是浮躁而不是复杂,于是决定自己实现一个简单的idp+sp+ldap,并支持SAML2.0. 基本的思路就是域账号认证,并提供saml2.0的token。
那么从哪里开始呢,还好有opensaml,帮我们实现了繁杂的底层细节,那么就从ldap认证开始吧。