为Java应用程序启用windows身份验证

为Java应用程序启用windows身份验证,java,authentication,spnego,waffle,Java,Authentication,Spnego,Waffle,我们正在运行一个托管在windows服务上的Java应用程序 java应用程序中嵌入了最新版本的Jettyweb服务器 我们正在Jetty Web服务器上运行servlet 我们有一个VB应用程序和另一个Java应用程序使用这些servlet 我们有一个要求: 在服务器应用程序上启用windows身份验证 我们尝试过: 我们试过了,但在使用时发现内存泄漏 我们不愿意尝试和其他基于Kerberos的解决方案,因为需要大量的配置 有人能建议在承载Jetty server的Java应用程序上启

我们正在运行一个托管在windows服务上的Java应用程序

java应用程序中嵌入了最新版本的Jettyweb服务器

我们正在Jetty Web服务器上运行servlet

我们有一个VB应用程序和另一个Java应用程序使用这些servlet

我们有一个要求:

  • 在服务器应用程序上启用windows身份验证
我们尝试过:

  • 我们试过了,但在使用时发现内存泄漏
  • 我们不愿意尝试和其他基于Kerberos的解决方案,因为需要大量的配置
有人能建议在承载Jetty server的Java应用程序上启用widows身份验证的方法吗?或者,如果我们做错了什么,请帮助我们使用华夫格,下面是我们必须在华夫格上启用windows身份验证的代码:

waffle.servlet.NegotiateSecurityFilter securityFilter = 
        new waffle.servlet.NegotiateSecurityFilter();
  FilterHolder filterHolder = new FilterHolder();
  filterHolder.setFilter(securityFilter);  
  EnumSet<DispatcherType> enums = EnumSet.of(DispatcherType.REQUEST);
  enums.add(DispatcherType.REQUEST);  
  servletContext.addFilter(filterHolder, "/*", enums);
waffle.servlet.NegotiateSecurityFilter securityFilter=
新的waffle.servlet.NegotiateSecurityFilter();
FilterHolder FilterHolder=新FilterHolder();
filterHolder.setFilter(securityFilter);
EnumSet enums=EnumSet.of(DispatcherType.REQUEST);
添加(DispatcherType.REQUEST);
addFilter(filterHolder,“/*”,枚举);

Waffle发现了什么内存泄漏?承载Web服务器的java应用程序经常被另一个java应用程序以大约每小时40K请求的速度调用。如果我们在Web服务器上使用Waffle进行windows身份验证,服务器进程将在2小时内达到1GB。您应该报告这一点。