- 浏览: 189386 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (153)
- 小技巧 (14)
- spring (3)
- struts2 (20)
- hibernate (0)
- java api (2)
- java se (8)
- jsp/servlet (4)
- oracle (0)
- mysql (1)
- ms sqlserver (1)
- js (30)
- jquery (8)
- ajax (2)
- .net (1)
- 软件 (1)
- j2ee (25)
- 网址收藏 (3)
- web综合 (9)
- web打印控件 (3)
- fckeditor (2)
- Groovy (1)
- PHP (5)
- 项目管理 (1)
- SEO (1)
- PostgreSQL (5)
- CKeditor (1)
- Fusion chart (1)
- 网页播放器 (1)
- 曾遇bug (3)
- java日志 (1)
- linux/Unix/CentOs (5)
- VBA (1)
- C# (0)
- 日期控件 (1)
- tomcat (2)
- cookies (1)
- java7 (1)
- JAVA文件操作 (2)
- hibernate;ehcache (2)
- 缓存 (1)
- dd (0)
- DB (1)
- android (2)
最新评论
-
flyingbin:
沙发,不过从头到尾没怎么看懂~
Windows密码本地破解通用方法 -
jfeimao:
credentialsToPrincipalResolvers ...
CAS(单点登陆)---总结一 -
haige18:
这两张图片引用的是网易的地址,现在资源有可能被删除了,所以就显 ...
Struts2中的Value Stack/Stack Context -
fengzhisha0914:
我的图片也不显示了..为何...
Struts2中的Value Stack/Stack Context -
greatwqs:
java.lang.IllegalStateException ...
java.lang.IllegalStateException:Cannot forward after response has been committed
返回更多用户信息继...
配置ssoAuth/WEB-INF/view/protocol/casServiceValidationSuccess.jsp下进行配置如完整页面如下:
<%@page pageEncoding="gbk"%> <%@ page session="false" %><%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %><%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %><cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'> <cas:authenticationSuccess> <cas:user>${fn:escapeXml(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.id)}</cas:user> <c:if test="${not empty pgtIou}"> <cas:proxyGrantingTicket>${pgtIou}</cas:proxyGrantingTicket> </c:if> <c:if test="${fn:length(assertion.chainedAuthentications) > 1}"> <cas:proxies> <c:forEach var="proxy" items="${assertion.chainedAuthentications}" varStatus="loopStatus" begin="0" end="${fn:length(assertion.chainedAuthentications)-2}" step="1"> <cas:proxy>${fn:escapeXml(proxy.principal.id)}</cas:proxy> </c:forEach> </cas:proxies> </c:if> <c:if test="${fn:length(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes) > 0}"> <cas:attributes> <c:forEach var="attr" items="${assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes}" varStatus="loopStatus" begin="0" end="${fn:length(assertion.chainedAuthentications[fn:length(assertion.chainedAuthentications)-1].principal.attributes)-1}" step="1"> <%-- Produce output exactly as CAS client code expects it: <cas:attrName>attrValue</cas:attrName> 格式一定要按照这种形式写,要不然在客户端时你得不到数据,因为服务器无法识别,大多数文章所定的那种形式 --%> <cas:${fn:escapeXml(attr.key)}>${fn:escapeXml(attr.value)}</cas:${fn:escapeXml(attr.key)}> </c:forEach> </cas:attributes> </c:if> </cas:authenticationSuccess> </cas:serviceResponse>
然后就在客户端返回用户信息,如下:
client jsp 通过这种形式可以获取到全部的用户信息:
<% AttributePrincipal principal = (AttributePrincipal) request.getUserPrincipal(); Set attributeSet=principal.getAttributes().entrySet(); for(Iterator iter=attributeSet.iterator();iter.hasNext();){ Map.Entry attribute=(Map.Entry)iter.next(); out.println("key:("+attribute.getKey()+")--->"+"value:("+attribute.getValue()+")***"); out.println(); } %>
9,给登录页设置验证码
1,在服务器ssoAuth/login上设置验证码.(login-webflow.xml)
2,自定义的登录页设置验证码(remoteLogin-webflow.xml)
查看这篇文章:http://blog.chinaunix.net/u2/86974/showart_1997021.html
要根据以上两种方案在不同的webflow中设置
10,解决如qq上qq邮箱单点登陆,我们用的是spark/openfire
我采用的是httpclient 登陆到ssoAuth/login上进行验证,获取到CASTGC这个cookie 然后在把他设置进要打
开的浏览器上,不过有个bug没有解决就是打开浏览器时cookie是如何写入到浏览器中?
1,要把cookie放在url上,转到一个servelet上进行写入cookie再中转,这个方法有缺陷.得到那个url在任何
浏览器都可以登陆.
2,查看了一下阿里旺旺的实现方式,他采用的是自己在im上写个服务器,然后进行cookie写入
来自:http://www.iteye.com/topic/625965
发表评论
-
Java 连接access 使用access文件 不用配置
2012-05-23 09:43 904String url = "jdbc:od ... -
在Java 7里如何对文件进行操作
2012-04-25 16:53 742下面的代码片段是由经过验证的程序修改而来。观察这些代码片段你会 ... -
Java将中文转换成拼音,用于字母的模糊查询
2012-04-23 15:05 1871/** * 将汉字转换为拼音 * ... -
JSON+Jquery实现页面动态加载
2011-12-09 18:10 812看附件 -
轻松实现Apache,Tomcat集群和负载均衡
2011-04-29 09:42 730作者:罗代均 ldj_work#126.com,转载请保 ... -
Java或web中解决所有路径问题
2011-04-28 21:48 707Java中使用的路径, ... -
基于jquery的上传插件Uploadify
2010-11-26 17:24 976无论是做Web产品还是Web项目,文件上传是经常要用到的功 ... -
JSP中的两种包含页面的方法
2010-11-09 11:47 759写道 第一种:include指令:当JSP转换成Servle ... -
pager-taglib 使用说明
2010-11-03 22:10 932http://www.iteye.com/topic/6265 ... -
jFreeChart 在jsp页上实现简单的折线图、柱状图
2010-10-31 13:57 1993可参考资料与网址 官方网站 http://www ... -
SSH + Lucene + 分页 + 排序 + 高亮 模拟简单新闻网站搜索引擎
2010-10-31 11:22 904SSH + Lucene + 分页 + 排序 + 高亮 ... -
【原创】CAS调研总结
2010-10-31 11:13 955本篇文章是对JA-SIG CAS(v3.3)的初步调研总结。 ... -
CAS客户端证书认证登录
2010-10-31 11:09 1909前端时间需要实现公司内网证书自动登录CAS. 由于对CAS的 ... -
CAS(单点登陆)---总结一
2010-10-31 11:05 1362单点登录(sso)是指基 ... -
单点登录CAS Server 介绍
2010-10-31 11:04 941下面的讲解基于CAS Server ... -
java 防sql注入
2010-10-27 21:29 839package com.cssweb.webcall.util ... -
防止未登录进行操作 解决登录页面内嵌问题
2010-10-27 21:28 1407防止未登录进行操作 解决登录页面内嵌问题 1.进入登录的 ... -
fckeditor的使用
2010-10-27 21:17 757先根据上一篇博文下载FckEditor的工具 1.简单的例子 ... -
网页在线编辑器 fckeditor
2010-10-27 21:16 1038几种常见的网页在线编 ... -
解决地址栏传输中文问题
2010-10-27 21:10 810一、传统的方法,修改tomcat/conf/server.xm ...
相关推荐
Struts2和CAS单点登录(SSO)的集成是一个常见的Web应用安全实践,它允许用户在一个系统登录后,无须再次输入凭证就能访问其他相互信任的系统。在这个例子中,我们将深入探讨如何在MyEclipse环境下使用Struts2框架与...
总结,这个压缩包提供了集成CAS单点登录到Maven项目所需的全部资源,包括服务端war包和客户端DEMO,是学习和实践SSO技术的好材料。通过深入理解和操作这些内容,你可以更好地掌握CAS的工作原理以及如何在实际项目中...
### Tomcat与CAS单点登录实现详解 #### 一、背景介绍 在现代企业级应用环境中,多个系统之间往往需要进行集成,以便于提供统一的用户体验和服务。其中一个关键的需求是实现单点登录(SSO, Single Sign-On)功能,即...
CAS(Central Authentication Service)是Java开发的一个开源的单点登录(Single Sign-On,简称SSO)系统,广泛应用于各类Web应用程序的身份验证。SSO允许用户通过一次登录,就能访问多个相互信任的应用系统,无需多...
总结起来,这个"cas单点登陆带attribute客户端示例程序"是学习和实现CAS SSO的一个宝贵资源。通过研究和调整这个示例,开发者可以快速地将CAS集成到自己的Java应用中,同时处理中文属性,提高应用的安全性和用户体验...
CAS 3.5.2 单点登录详解 CAS(Central Authentication Service)是一种流行的单点登录解决方案,主要用于提供统一身份验证和授权管理。CAS 3.5.2 是 CAS 的一个稳定版本,提供了许多实用的功能和配置项。在本文中,...
JEECG单点登录集成文档(kisso集成)详细介绍了如何将Kisso单点登录解决方案集成...通过以上知识点的总结,开发者能够更深入地理解Kisso在JEECG单点登录集成中的工作原理及实现方法,并能按照文档指南进行配置和开发。
CAS是一种开源的身份验证框架,它提供单点登录(SSO)功能,通常用于集中管理多个应用系统的用户认证。以下是对文章内容的详细解析: **一、目标与原则** 1. **不影响原有统一登录界面功能**:修改的目标是在保留...
"spring boot 1.5.4 集成shiro+cas实现单点登录和权限控制" Spring Boot 1.5.4 集成 Shiro+Cas 实现单点登录和权限控制是指在 Spring Boot 应用程序中使用 Shiro 框架和 Cas 服务器来实现单点登录和权限控制的功能...
CAS(Central Authentication Service)是一种广泛使用的开放源代码单点登录(Single Sign-On,SSO)框架,它允许用户通过一个中央认证服务访问多个应用系统,而无需为每个系统单独进行登录。在实际的企业环境中,...
总结来说,Tomcat实现单点登录SSO,主要通过配置合适的Realm,结合Cookie机制,实现用户身份在多个应用间的共享。同时,理解SSO的各种实现技术,如基于Cookie、Kerberos、SAML和CAS等,有助于选择最合适的SSO解决...
**JSP实现单点登录(Single Sign-On,SSO)详解** 在Web应用程序中,单点登录(Single Sign-On,SSO)是一种便捷的身份验证机制,允许用户在一次登录后,就能访问多个相互关联的应用系统,而无需再次输入凭证。在...
单点登录(Single Sign-On,简称SSO)是一种用户身份验证机制,允许用户在一个安全领域内访问多个应用系统,而无需多次输入身份验证信息。在税务行业信息化发展中,应用整合成为关键,SSO作为其核心组成部分,对于...
总结来说,"前后端未分离的单点登录"涉及到Java编程、SSO认证流程、CAS服务器的配置和使用,以及在非前后端分离架构下的安全性考虑。理解并实践这些知识点对于构建和维护大型企业级应用至关重要。
本篇文章将深入探讨这一主题,并基于给定的标签"SSO"、"Java"和"单点登陆"进行详细解析。 1. SSO原理: SSO的核心思想是用户只需在一个地方验证身份,然后这个验证结果可以被其他所有系统接受。这通常通过一个中心...
CAS 通过 Ticket 机制来实现单点登录,用户首先访问 CAS 服务器,CAS 服务器对用户进行身份验证,然后颁发 Ticket,用户可以使用 Ticket 访问多个应用系统。 Security Security 是 Spring 框架中的一个模块,提供...
描述中提到的"单点登陆(Single Sign-On,简称SSO)"是一种身份验证机制,允许用户在一次登录后访问多个相互信任的应用系统,无需为每个系统分别输入凭证。CAS(Central Authentication Service)是一个广泛使用的...
- **运行配置了CAS的子系统**:部署并运行配置了CAS的子系统,确保单点登录功能正常工作。 - **为CAS配置SSL** - **生成密钥**:生成用于HTTPS连接的密钥。 - **为jetty配置SSL**:配置jetty服务器以支持HTTPS。 ...