OIOSAML.JAVA是SAML2.0的一个Java开源实现。这个工具箱主要组成是一个servlet过滤器,用于保存受访问的资源。该过滤器能够自动处理所有SAML信息。
SAML(Security Assertion Markup Language)是一个XML框架,也就是一组协议,可以用来传输安全申明。比如,两台远程机器之前要通讯,为了保证安全,我们可以采用加密等措施,也 可以采用SAML来传输,传输的数据以XML形式,符合SAML规范,这样我们就可以不要求两台机器采用什么样的系统,只要求能理解SAML规范即可,显 然比传统的方式更好。SAML 规范是一组Schema 定义。
可以这么说,在Web Service 领域,schema就是规范,在Java领域,API就是规范。
SAML 主要包括三个方面: 1.认证申明。表明用户是否已经认证,通常用于单点登录。 2.属性申明。表明 某个Subject 的属性。 3.授权申明。表明 某个资源的权限。
SAML就是客户向服务器发送SAML 请求,然后服务器返回SAML响应。数据的传输以符合SAML规范的XML格式表示。 SAML 可以建立在SOAP上传输,也可以建立在其他协议上传输。 因为SAML的规范由几个部分构成:SAML Assertion,SAML Prototol,SAML binding等。
SAML就是为了解决安全问题提出的。SAML 基于 XML 签名规范,所以整个XML传输虽然是明文,但无法被修改。显然,也可以将XML加密后在传输了。
下载地址