package com.rampart;
import java.io.IOException;
import javax.security.auth.callback.Callback;
import javax.security.auth.callback.CallbackHandler;
import javax.security.auth.callback.UnsupportedCallbackException;
import org.apache.log4j.Logger;
import org.apache.ws.security.WSPasswordCallback;
/**
*
* @author leno
*
*/
public class WsServiceAuthHandler123 implements CallbackHandler {
private final static String USERNAME = "csxt";
private final static String PASSWORD = "123456";
private Logger log = Logger.getLogger(WsServiceAuthHandler123.class);
/**
* 〈一句话功能简述〉 〈功能详细描述〉
*
* @see javax.security.auth.callback.CallbackHandler#handle(javax.security.auth.callback.Callback[])
* @param callbacks
* @throws IOException
* @throws UnsupportedCallbackException
*/
@Override
public void handle(Callback[] callbacks) throws IOException, UnsupportedCallbackException {
WSPasswordCallback pCallback = (WSPasswordCallback) callbacks[0];
// 标识符
String id = pCallback.getIdentifier();
// 此处获取到的password为null,但是并不代表服务端没有拿到该属性。
// 这是因为客户端提交过来的密码在SOAP 消息中已经被加密为MD5
// 的字符串,如果我们要在回调方法中作比较,那么第一步要做的就是把服务端准备好的密码加密为MD5 字符串,由于MD5
// 算法参数不同结果也会有差别,
//String password = pCallback.getPassword();
log.info("接收到WebService请求,userName[" + id + "]");
if (null == id) {
log.info("验证用户失败,原因:您没有权限访问,用户名为空!");
throw new UnsupportedCallbackException(pCallback, "您没有权限访问,用户名为空!");
} else if (!USERNAME.equals(id)) {
log.info("验证用户失败,原因:您没有权限访问,用户名错误!");
throw new UnsupportedCallbackException(pCallback, "您没有权限访问,用户名错误!");
} else {
/**
* 1. 查询数据库,得到数据库中该用户名对应密码
* 2. 设置密码,wss4j会自动将你设置的密码与客户端传递的密码进行匹配
* 3. 如果相同,则放行,否则返回权限不足信息
*/
pCallback.setPassword(PASSWORD);
}
pCallback.setIdentifier("service");
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
axis2服务端源码,带用户身份认证 (118个子文件)
LoginService.class 3KB
UserCheckHandler.class 2KB
WsServiceAuthHandler123.class 2KB
Calculate.class 1KB
User.class 715B
SayHello.class 712B
.classpath 834B
org.eclipse.wst.common.component 479B
org.eclipse.wst.jsdt.ui.superType.container 49B
xalan-2.7.0.jar 2.6MB
xmlbeans-2.5.0.jar 2.6MB
bcprov-jdk15on-1.49.jar 2.36MB
jaxb-xjc-2.2.6.jar 1.98MB
opensaml-2.5.1-1.jar 1.29MB
jaxb-impl-2.2.6.jar 1.06MB
axis2-kernel-1.7.1.jar 1.01MB
jaxws-tools-2.2.6.jar 819KB
axis2-jaxws-1.7.1.jar 732KB
axiom-dom-1.2.17.jar 699KB
axis2-adb-1.7.1.jar 660KB
xmlsec-1.5.7.jar 641KB
bcel-findbugs-6.0.jar 598KB
xmltooling-1.3.2-1.jar 597KB
axiom-impl-1.2.17.jar 559KB
openws-1.4.2-1.jar 552KB
commons-collections-3.1.jar 546KB
joda-time-1.6.2.jar 530KB
woodstox-core-asl-4.2.0.jar 471KB
wss4j-1.6.16.jar 446KB
antlr-2.7.7.jar 435KB
axis2-metadata-1.7.1.jar 423KB
httpclient-4.2.1.jar 417KB
axiom-api-1.2.17.jar 413KB
jibx-bind-1.2.jar 398KB
velocity-1.5.jar 383KB
log4j-1.2.15.jar 383KB
mail-1.4.jar 380KB
woden-core-1.0M10.jar 365KB
esapi-2.0GA.jar 359KB
commons-httpclient-3.1.jar 298KB
axis2-codegen-1.7.1.jar 253KB
jaxen-1.1.6.jar 226KB
tribes-6.0.16.jar 223KB
httpcore-4.2.1.jar 218KB
commons-lang-2.1.jar 203KB
stax2-api-3.1.1.jar 178KB
axis2-adb-codegen-1.7.1.jar 177KB
gson-2.1.jar 176KB
axis2-transport-http-1.7.1.jar 170KB
xmlschema-core-2.2.1.jar 168KB
rampart-policy-1.7.0.jar 167KB
commons-io-2.1.jar 159KB
rampart-core-1.7.0.jar 155KB
axis2-corba-1.7.1.jar 149KB
wsdl4j-1.6.2.jar 145KB
jibx-run-1.2.jar 126KB
rampart-trust-1.7.0.jar 121KB
axis2-clustering-1.7.1.jar 105KB
jaxb-api-2.2.6.jar 97KB
apache-mime4j-core-0.7.2.jar 93KB
axis2-saaj-1.7.1.jar 90KB
xml-resolver-1.2.jar 82KB
jettison-1.3.jar 71KB
neethi-3.0.3.jar 70KB
commons-fileupload-1.3.1.jar 67KB
activation-1.1.jar 62KB
commons-logging-1.1.1.jar 59KB
geronimo-jaxws_2.2_spec-1.0.jar 59KB
axis2-json-1.7.1.jar 51KB
commons-codec-1.3.jar 46KB
jsr311-api-1.1.1.jar 45KB
commons-cli-1.2.jar 40KB
axis2-jibx-1.7.1.jar 35KB
axis2-soapmonitor-servlet-1.7.1.jar 33KB
axis2-java2wsdl-1.7.1.jar 33KB
mex-1.7.1-impl.jar 32KB
geronimo-saaj_1.3_spec-1.0.1.jar 29KB
geronimo-stax-api_1.0_spec-1.0.1.jar 28KB
axis2-jaxbri-1.7.1.jar 28KB
axis2-xmlbeans-1.7.1.jar 27KB
slf4j-api-1.6.1.jar 25KB
axis2-transport-local-1.7.1.jar 19KB
juli-6.0.16.jar 19KB
axiom-jaxb-1.2.17.jar 16KB
axis2-fastinfoset-1.7.1.jar 16KB
geronimo-jta_1.1_spec-1.1.jar 15KB
geronimo-ws-metadata_2.0_spec-1.1.2.jar 14KB
axis2-mtompolicy-1.7.1.jar 14KB
axis2-spring-1.7.1.jar 13KB
geronimo-annotation_1.0_spec-1.1.jar 12KB
slf4j-jcl-1.6.1.jar 8KB
WsServiceAuthHandler123.java 2KB
LoginService.java 2KB
UserCheckHandler.java 1021B
Calculate.java 449B
User.java 410B
SayHello.java 161B
jquery.min.js 95KB
.jsdtscope 503B
modules.list 191B
共 118 条
- 1
- 2
资源评论
- 楼兰梧桐2019-04-12404错误,找不到资源。分还扣了。
- flyscott2024-03-31#内容详尽
jackyhuangch
- 粉丝: 22
- 资源: 46
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功