草庐IT

java - 自定义身份验证过滤器 Spring Security 3.2

对于一个项目,我尝试使用SpringSecurity3.2作为基础安全性。因为这个项目已经启动并运行,所以我已经有了另一个(自己的)安全层。因此,我制作了一个自定义身份验证提供程序来融化安全层。工作正常,直到我还需要进行自定义匿名身份验证(SpringSecurityDocumentation,chapter13)。所以我制作了一个自定义过滤器并删除了原始过滤器:...bean:和teJava类:publicclassSecurityAnonymousAuthenticationFilterextendsGenericFilterBeanimplementsInitializingBe

java - 没有 web.xml 的 Spring 安全自定义身份验证过滤器

使用注释和java配置,我不太清楚如何为spring安全注册一个覆盖的过滤器。我想要实现的是在不显示登录表单的情况下进行自动登录,因为那时用户已经通过身份验证。因此只会读取header参数并使用springsecurity进行授权。这是我正在尝试的简化版本,除了有时会显示登录屏幕外,Spring安全性工作正常。引导BypassLoginFilter是我需要做的一切。另请阅读某处,对于这种行为,应该关闭http自动配置,但不确定如何在纯java配置中实现。SecurityWebApplicationInitializer.javaimportorg.springframework.sec

java - 将 Jersey 日志过滤器重定向到 logback

这个问题在这里已经有了答案:JerseyServerLogging/wLogback(3个答案)关闭8年前。我将Jersey用于我的Web服务,并为我的web.xml文件配置了用于请求和响应过滤的日志记录过滤器Jersey使用java.util.loggingAPI我想知道如何将日志重定向到logback显然这行不通:你能帮帮我吗?

java - 选择性使用 Spring Security 的 CSRF 过滤器

免责声明:我的问题有点类似于thisquestion和thisquestion,但我已经尝试了这些线程中建议的所有答案,并且已经花了几天时间来解决这个问题。我在我现有的应用程序(仅限JSP、Servlet)中引入了SpringSecurity3.2.6,并且我正在使用Java配置。我的应用程序将同时被浏览器和非浏览器客户端使用。我希望所有对URL的浏览器请求(即/webpages/webVersion/和/webpages/webVersion2/)都启用CSRF,而所有其他请求都禁用CSRF。非浏览器客户端永远不会访问以上两个URL,而浏览器应用程序也可能访问禁用CSRF的URL。我

java - Java 中的布隆过滤器

基本上我必须实现布隆过滤器并使用字符“a”到“z”和“A”到“Z”对其进行测试(简单易行)。然后我必须测试误报,但要求说使用“aa”到“ZZ”(字符串)来计算误报(未完成)。知道这是什么意思吗? 最佳答案 误报需要实际数据集,我想你的教授的意思是:现在将'a'-'z','A'-'Z'添加到过滤器(实际数据)中,检查所有字符串“aa"-"ZZ",计算误报的数量(所有的肯定都是假的,因为它们都不在数据中)并提取比率:#false_positives/#strings_in_range("aa","ZZ")编辑:在评论中@Bill询问如何

带有方法调用的 Java 8 过滤器

我正在学习Java8lambda和流并尝试一些示例。但面临着问题。这是我的代码fillUpdate(Personp){Listnotes=getAddress();notes.stream().filter(addr->addr!=null).map(this::preparePersonInfo,p,addr);}privatevoidpreparePersonInfo(Personp,Addressaddr){//dosomestuff}我在.mapaddr(第二个参数)字段中遇到编译错误。它有什么问题,您能否提供学习Java8流的链接。仅供引用,我正在关注此链接Java8lamb

java - Tuckey URL 重写过滤器 Java 类配置

我一直在研究如何在Tomcat8上执行URL重写,并不断遇到相同的两个建议。1)使用TuckeyURLRewriteFilter。2)在Tomcat之上运行Apache以使用mod_rewrite。关于前者,URLRewriteFilter似乎没有任何关于如何以Java格式而不是XML格式进行配置的文档。我的SpringMVC应用程序没有使用web.xml文件——所有配置都是通过Java类完成的——所以我无法使用XML进行配置。除了尝试在Tomcat上运行Apache之外,是否有任何方法可以以这种方式进行配置,或者是否有其他好的替代方法?例如,有没有一种方法可以在Java而不是XML中

Java:创建一个简单的通用方法以在应用过滤器后进行计数

我想创建一个简单的通用方法来计算numbers根据提供的predicate应用过滤器后.staticintcount(Collectionnumbers,Predicatepredicate){returnnumbers.stream().filter(predicate).count();}它给我以下错误:incompatibletypes:PredicatecannotbeconvertedtoPredicatewhereCAP#1,CAP#2arefreshtype-variables:CAP#1extendsNumberfromcaptureof?extendsNumberCA

java - 如何在不向用户显示堆栈跟踪的情况下处理 servlet 过滤器中的错误状态?

我正在开发Jetty/RESTEasy应用程序。如果我从我的REST端点之一抛出WebApplicationException(myResponse),它会将给定的响应发送到客户端。当过滤器检测到错误时,我想要相同的行为:它应该停止继续执行,并且它应该向用户提供不包含堆栈跟踪的清晰的JSON格式错误。显然,只需写入响应流并从doFilter方法中返回ing即可。但这不适用于doFilter调用的其他方法。抛出任何异常都会满足条件#1,但我还没有想出一个理智的方法来满足条件#2。(你可以在底部看到我最好的尝试。)正如Perception在他的回答中所解释的那样,WebApplicatio

java - 如何根据 Java 8 Stream 过滤器的输出计算百分比

我想获取一个作业列表(称为resultStream)并计算完全完成的作业的百分比。publicclassJob{privateDatedate;privateStringsuccess;//Getterandsetterandconstructor.}列表包含以下内容:newJob("TODAY","YES");newJob("TODAY","YES");newJob("YESTERDAY","YES");newJob("TODAY","NO");这是我目前的代码:resultStream.stream().parallel().filter(result->{if("YES".con