Sentinel实现黑白名单控制详细教程来了

简介: Sentinel实现黑白名单控制详细教程来了

一:新建一个IpRequestOriginParser类,实现RequestOriginParser接口,配置如下



public class IpRequestOriginParser implements RequestOriginParser {
    /**
     * Parse the origin from given HTTP request.
     *
     * @param request HTTP request
     * @return parsed origin
     */
    @Override
    public String parseOrigin(HttpServletRequest request) {
        return request.getRemoteAddr();
    }
}

二:新建一个SentinelConfig类,配置如下

@Configuration
public class SentinelConfig {

    @PostConstruct
    public void init() {
        WebCallbackManager.setUrlBlockHandler(new DemoUrlBlockHandler());
        WebCallbackManager.setRequestOriginParser(new IpRequestOriginParser());
    }
}


三:新建一个DemoUrlBlockHandler类,实现UrlBlockHandler接口,配置如下

public class DemoUrlBlockHandler implements UrlBlockHandler {
@Override
public void blocked(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, BlockException e) throws IOException {
httpServletResponse.getWriter().println(“error url”);
}
}

四:访问一次/white接口,sentinel控制台就会出现地址了,是懒加载的

五:点击授权规则,新增授权规则,输入路径,点击白名单


六:在浏览器访问/white接口,可以看到有返回值

七:修改授权类型为黑名单,在次访问接口,可以看到报错

相关文章
|
6月前
|
监控 Java 数据安全/隐私保护
Sentinel黑白名单授权规则解读
Sentinel黑白名单授权规则解读
|
SpringCloudAlibaba 数据安全/隐私保护 Sentinel
SpringCloud Alibaba系列(三) Sentinel黑白名单限制
  很多时候,我们需要根据调用来源来判断该次请求是否允许放行,这时候可以使用 Sentinel 的来源访问控制(黑白名单控制)的功能。来源访问控制根据资源的请求来源(origin)限制资源是否通过,若配置白名单则只有请求来源位于白名单内时才可通过;若配置黑名单则请求来源位于黑名单时不通过,其余的请求通过。
300 0
|
前端开发 Java Nacos
【Sentinel】规则持久化教程
【Sentinel】规则持久化教程
298 0
【Sentinel】规则持久化教程
|
设计模式 自然语言处理 监控
【SpringCloud-Alibaba系列教程】8.一文学会使用sentinel
White带着大家以微服务架构和设计模式落地实战的方式,进行讲解和实现SpingCloud的代码开发,本节将介绍Sentinel规则使用
501 1
【SpringCloud-Alibaba系列教程】8.一文学会使用sentinel
|
API Sentinel 微服务
【SpringCloud-Alibaba系列教程】11.gateway与sentinel组合
在之前,我们教程已经写了一部分关于sentinel限流的方式,主要是针对于某个微服务本身进行限流,后来我们引入网关的概念,现在我们结合gateway与sentinel进行限流,主要是从一下两个纬度,第一个就是路由维度,另一种就是分组维度,下面我们根据不同维度进行实战。
1020 0
【SpringCloud-Alibaba系列教程】11.gateway与sentinel组合
|
设计模式 Sentinel 微服务
【SpringCloud-Alibaba系列教程】9.Fegin整合sentinel
接下来的章节,White带着大家以微服务架构和设计模式落地实战的方式,进行讲解和实现SpingCloud的代码开发。本章节主要使用sentinel更加优雅,与Fegin结合。
441 0
【SpringCloud-Alibaba系列教程】9.Fegin整合sentinel
|
监控 NoSQL Redis
Redis一主二从Sentinel监控配置(保姆级教程)
Redis一主二从Sentinel监控配置(保姆级教程)
148 0
Redis一主二从Sentinel监控配置(保姆级教程)
|
3月前
|
Java UED Sentinel
微服务守护神:Spring Cloud Sentinel,让你的系统在流量洪峰中稳如磐石!
【8月更文挑战第29天】Spring Cloud Sentinel结合了阿里巴巴Sentinel的流控、降级、熔断和热点规则等特性,为微服务架构下的应用提供了一套完整的流量控制解决方案。它能够有效应对突发流量,保护服务稳定性,避免雪崩效应,确保系统在高并发下健康运行。通过简单的配置和注解即可实现高效流量控制,适用于高并发场景、依赖服务不稳定及资源保护等多种情况,显著提升系统健壮性和用户体验。
83 1
|
5月前
|
监控 Java Sentinel
使用Sentinel进行服务调用的熔断和限流管理(SpringCloud2023实战)
Sentinel是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量路由、流量控制、流量整形、熔断降级、系统自适应过载保护、热点流量防护等多个维度来帮助开发者保障微服务的稳定性。
151 3
|
30天前
|
负载均衡 算法 Java
蚂蚁面试:Nacos、Sentinel了解吗?Springcloud 核心底层原理,你知道多少?
40岁老架构师尼恩分享了关于SpringCloud核心组件的底层原理,特别是针对蚂蚁集团面试中常见的面试题进行了详细解析。内容涵盖了Nacos注册中心的AP/CP模式、Distro和Raft分布式协议、Sentinel的高可用组件、负载均衡组件的实现原理等。尼恩强调了系统化学习的重要性,推荐了《尼恩Java面试宝典PDF》等资料,帮助读者更好地准备面试,提高技术实力,最终实现“offer自由”。更多技术资料和指导,可关注公众号【技术自由圈】获取。
蚂蚁面试:Nacos、Sentinel了解吗?Springcloud 核心底层原理,你知道多少?