在Ratpack中,使用来自Pac4J的IpClient过滤请求

时间:2018-10-19 03:04:29

标签: ratpack

在我的Ratpack应用中,我试图使用Pac4J的IpClient过滤使用IP地址的请求。我希望某些IP地址能够发送发布请求,而其他IP地址被阻止。

我正在使用lazybones模板进行测试,并且获得了以下代码:

ratpack {
bindings {
    module MarkupTemplateModule
    module SessionModule
}

handlers {
    final IpClient ipClient = new IpClient(new IpRegexpAuthenticator(".*"))
    all(authenticator(ipClient))
    all {
        byMethod {
            post {
                all(RatpackPac4j.requireAuth(IpClient.class))
                RatpackPac4j.userProfile(context)
                        .route { o -> o.present } { render "Authenticated" }
                        .then { render "Not authenticated" }
            }
            get {
                render "No authentication required"
            }
        }
    }
}
}

将regexp设置为。*应该始终进行身份验证,但是在我发帖时,我总是看到“未经身份验证”。

我显然做错了,但是我不确定。有人可以指出正确的方法吗?

0 个答案:

没有答案