首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将使用java和SpringBoot框架创建的微服务中的一组ipAdresses列入黑名单

将使用java和SpringBoot框架创建的微服务中的一组ipAdresses列入黑名单
EN

Stack Overflow用户
提问于 2022-01-17 08:32:37
回答 1查看 366关注 0票数 -2

我有一个微型服务,用来询问不同类型和操作系统的设备,但出于一系列原因,我想把几个IP列入黑名单。我有办法做到这一点吗?

EN

回答 1

Stack Overflow用户

发布于 2022-01-17 09:21:20

您试过使用HandlerInterceptor接口吗?

与WebMvcConfigurerAdapter相结合。这应该能胜任这份工作。

就像这样,这里没有精确的工作代码

代码语言:javascript
复制
//Call after request processing, but before the view is rendered (after controller method call)
@Override
public void postHandle(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, Object o, ModelAndView modelAndView) throws Exception {
    String ip = IPAddressUtil.getClientIpAddress(httpServletRequest);
    List<BlackList> blackLists = blackListDao.findByIp(ip);
    if (blackLists == null || blackLists.size() == 0){
        urlHandle(httpServletRequest, 5000, 10);
    } else {
         //Forced control jump
         modelAndView.setViewName("/errorpage/error.html");
    }
}

BlackListDao类可以是这样的

代码语言:javascript
复制
@Mapper
public interface BlackListDao {
    //Find records by IP
    List<BlackList> findByIp(String IP);
    //Add record
    int addBlackList(@Param("blackList") BlackList blackList);
}

为spring配置Interceptor Webmvcconfigureradapter。

代码语言:javascript
复制
@Configuration
public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {
    @Bean // inject our interceptor as bean
    public HandlerInterceptor getMyInterceptor(){
    return new URLInterceptor();
}
@Override
public void addInterceptors(InterceptorRegistry registry) {
    //Multiple interceptors form an interceptor chain
    //Addpathpatterns is used to add interception rules. Here we assume that all links after interception / URL
    //Excludepathpatterns user exclusion
registry.addInterceptor(getMyInterceptor()).addPathPatterns("/url/**");
            super.addInterceptors(registry);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70738452

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档