我有一个sun-jaxws xml Web服务:
package com.myWebservices.ws;
import java.*;
import javax.*;
@WebService
public class GetSomeInfo{
//allow IP to consume web service
private static final String IP = "192.168.0.1";
@Resource
WebServiceContext wsContext;
@WebMethod(operationName="getSomeInfo")
public String getSomeInfo(String data) {
MessageContext mc = wsContext.getMessageContext();
HttpServletRequest req = (HttpServletRequest)mc.get(MessageContext.SERVLET_REQUEST);
//control access by IP inside the web service code
if (!(req.getRemoteAddr().equals(IP)))
result = "ACCESS DENIED";
else
String result = bean.executeSomeProcess(data);
return result
}
}
您可以看到,Web服务受IP访问保护。但是Web服务具有公共访问权限,即使您没有获取只有“ACCESS DENIED”的信息,您也可以使用它。
我想知道是否可以在他们自己的webapp xml文件配置(WEB-INF / sun-jaxws.xml,web.xml,META-IN / context.xml或任何...)中配置Web服务相同保护IP访问,它自动拒绝对不同授权IP的Web服务的任何访问,甚至没有人可以使用Web服务。
编辑:添加信息:
如果我可以为JAX-RS过滤器配置web.xml文件并获得IP保护访问权限,我真的需要知道。
谢谢。