diff --git a/modules/jooby-pac4j/src/main/java/io/jooby/pac4j/Pac4jModule.java b/modules/jooby-pac4j/src/main/java/io/jooby/pac4j/Pac4jModule.java index 12d139887f..3b45ee54ba 100644 --- a/modules/jooby-pac4j/src/main/java/io/jooby/pac4j/Pac4jModule.java +++ b/modules/jooby-pac4j/src/main/java/io/jooby/pac4j/Pac4jModule.java @@ -493,9 +493,13 @@ public Pac4jModule client(@Nonnull Class authorizer, String pattern = entry.getKey(); if (!pattern.equals("*")) { List keys = Router.pathKeys(pattern); - if (keys.size() == 0) { - application.get(pattern, new SecurityFilterImpl(null, pac4j, options, lazyClientNameList(entry.getValue()), - clientMap.get(pattern).authorizers)); + if (keys.isEmpty()) { + SecurityFilterImpl securityFilter = new SecurityFilterImpl(null, pac4j, options, + lazyClientNameList(entry.getValue()), + clientMap.get(pattern).authorizers); + application.get(pattern, securityFilter); + // POST for direct authentication + application.post(pattern, securityFilter); } else { application.decorator(new SecurityFilterImpl(pattern, pac4j, options, lazyClientNameList(entry.getValue()), clientMap.get(pattern).authorizers));