资源简介
1、 客户端请求认证原文:应用客户端向应用服务端请求认证原文。
2、 服务端请求认证原文:应用服务端向网关请求认证原文。
3、 网关返回认证原文:网关产生认证原文并返回给应用服务端。
4、 服务端返回认证原文:应用服务端将认证原文返回给应用客户端。
5、 客户端认证:应用客户端让用户选择证书,然后产生认证请求包并发给应用服务端发起认证请求。
6、 应用服务端认证:应用服务端将请求包发给网关请求身份认证。
7、 网关返回认证响应:网关完成认证请求的处理后,将认证响应返回给应用服务端。
8、 服务端处理:应用服务端根据认证响应中的认证结果、用户属性等内容进行业务处理然后向客户端返回响应。
代码片段和文件信息
/**
* Copyright © 1999-2008 JIT Co,Ltd.
* All right reserved.
*/
package cn.com.jit.cinas;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Properties;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.PostMethod;
import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element;
import org.dom4j.io.xmlWriter;
import sun.misc.base64Encoder;
public class AuthenServlet extends HttpServlet {
private static final long serialVersionUID = -1686835672374220173L;
private String tempURL = null propertiesURL = null;
private Properties props = null;
public void init(ServletConfig cfg) throws ServletException {
tempURL = cfg.getInitParameter(“url“);
propertiesURL = cfg.getInitParameter(“propertiesURL“);
}
protected void doGet(HttpServletRequest req HttpServletResponse resp)
throws IOException ServletException {
HttpServletRequest request = (HttpServletRequest) req;
HttpServletResponse response = (HttpServletResponse) resp;
/***************************************************************************
* isSuccess 认证是否成功true成功/false失败;errCode 错误码;errDesc 错误描述 *
* ************************************************************************/
//第四步:客户端认证
//第五步:服务端验证认证原文
//第六步:应用服务端认证
//第七步:网关返回认证响应
//第八步:服务端处理
/***********************************
* 获取应用标识及网关认证地址 *
***********************************/
boolean isSuccess = true;
String errCode = null errDesc = null;
// 可以根据需求使用不同的获取方法
String appId = this.getProperties(request.getSession()KEY_APP_ID);
String authURL = this.getProperties(request.getSession()KEY_AUTHURL);
if (!isNotNull(appId) || !isNotNull(authURL)) {
isSuccess = false;
errDesc = “应用标识或网关认证地址不可为空“;
System.out.println(“应用标识或网关认证地址不可为空\n“);
}
String original_data = null signed_data = nulloriginal_jsp = null username = null password = null;
/**************************
* 获取认证数据信息 *
**************************/
if (isSuccess) {
System.out.println(“应用标识及网关的认证地址读取成功!\n应用标识:“ + appId + “\n认证地址:“
+ authURL + “\n“);
if (isNotNull((String) request.getSession().getAttribute(
KEY_ORIGINAL_DATA))
&& isNotNull((String) request.getParameter(KEY_SIGNED_DATA))&&isNotNull((String) request.getParameter(KEY_ORIGINAL_JSP))) {
// 获取session中的认证原文
original_data = (String) request.getSession().getAttribute(
KEY_ORIGINAL_DATA);
// 获取request中的认证原文
original_jsp = (String) request.getParameter(
KEY_ORIGINAL_JSP);
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 657 2010-08-09 17:24 bsdemo\.classpath
文件 1039 2010-04-26 13:37 bsdemo\.project
文件 454 2010-04-26 13:28 bsdemo\.settings\.jsdtscope
文件 88 2010-04-29 17:38 bsdemo\.settings\org.eclipse.core.resources.prefs
文件 633 2010-08-09 17:23 bsdemo\.settings\org.eclipse.jdt.core.prefs
文件 452 2010-04-26 13:37 bsdemo\.settings\org.eclipse.wst.common.component
文件 229 2010-08-09 17:24 bsdemo\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2010-04-26 13:28 bsdemo\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2010-04-26 13:28 bsdemo\.settings\org.eclipse.wst.jsdt.ui.superType.name
文件 20037 2010-08-16 17:00 bsdemo\src\cn\com\jit\cinas\AuthenServlet.java
文件 3604 2010-08-16 09:57 bsdemo\src\cn\com\jit\cinas\RandomServlet.java
文件 3703 2010-08-16 17:42 bsdemo\WebContent\context.jsp
文件 915 2009-08-05 15:43 bsdemo\WebContent\images\body.css
文件 66 2009-08-05 15:43 bsdemo\WebContent\images\bodylist_top1.gif
文件 98 2009-08-05 15:43 bsdemo\WebContent\images\bodylist_top2.gif
文件 846 2009-08-05 15:43 bsdemo\WebContent\images\css.css
文件 4761 2009-08-05 15:43 bsdemo\WebContent\images\testtop.gif
文件 4879 2009-08-05 15:43 bsdemo\WebContent\images\testtop1.gif
文件 5126 2009-08-05 15:43 bsdemo\WebContent\images\testtop2.gif
文件 198 2009-08-05 15:43 bsdemo\WebContent\images\topall_42.gif
文件 10503 2009-08-05 15:43 bsdemo\WebContent\images\topall_43.gif
文件 330 2009-08-05 15:43 bsdemo\WebContent\images\vssver2.scc
文件 160138 2010-04-26 14:07 bsdemo\WebContent\JITDSign.cab
文件 2325 2010-08-16 17:42 bsdemo\WebContent\login.jsp
文件 39 2010-04-26 13:28 bsdemo\WebContent\me
文件 13374 2010-08-16 17:00 bsdemo\WebContent\WEB-INF\classes\cn\com\jit\cinas\AuthenServlet.class
文件 4293 2010-08-16 13:25 bsdemo\WebContent\WEB-INF\classes\cn\com\jit\cinas\RandomServlet.class
文件 46725 2009-08-05 15:43 bsdemo\WebContent\WEB-INF\lib\commons-codec-1.3.jar
文件 279781 2009-08-05 15:43 bsdemo\WebContent\WEB-INF\lib\commons-httpclient-3.0.1.jar
文件 31605 2009-08-05 15:43 bsdemo\WebContent\WEB-INF\lib\commons-logging-1.03.jar
............此处省略23个文件信息
- 上一篇:3d x文件 角色动画模型
- 下一篇:莲花邮件系统 lotus notes
相关资源
- spring-cloud demo
- STM32F103产生正弦波DEMO
- IOS苹果ibeacon官方demo源码
- 微信小程序Demo:小程序教育类模板课
- jSignature 签名Demo
- maven+ssm框架demo
- SSM整合demo---maven项目
- sitemesh入门demo
- extJs-demo.zip
- JTable详细使用demo
- Facebook插屏广告demo.txt
- 简易路由器-demo
- spring-boot-mybatis+c3p0demo
- Echart报表实现的Demo案例
- 微信DEMO登陆/支付
- Echarts+百度地图_散点图完整版demo
- Log4Net封装,类可直接引入使用,附
- RPCdemo
- springboot demo基本的增删改查
- 移动端mobileSelect省市区三级联动demo及
- springboot-dubbo登陆demo
- src_demo_veriosn1.rar
- 百度智能小程序官方纯净demo 初始化
- 百度智能小程序官方Demo
- unity的GPS的测试demo和代码
- 简单的AStar算法Demo
- springboot+shiro代码demo
- TxtReadDemo.sln
- Origin pro9.0/Origin pro 2017使用一段时间后
- 百度人脸识别api接口demo
评论
共有 条评论