当前位置: 首页 > article >正文

sentinel来源访问控制(黑白名单)

很多时候,我们需要根据调用方来限制资源是否通过,这时候可以使用 Sentinel 的黑白名单控制的功能。黑白名单根据资源的请求来源(origin)限制资源是否通过,若配置白名单则只有请求来源位于白名单内时才可通过;若配置黑名单则请求来源位于黑名单时不通过,其余的请求通过。

调用方信息通过 ContextUtil.enter(resourceName, origin) 方法中的 origin 参数传入。

规则配置

黑白名单规则(AuthorityRule)非常简单,主要有以下配置项:

  • resource:资源名,即限流规则的作用对象
  • limitApp:对应的黑名单/白名单,不同 origin 用 , 分隔,如 appA,appB
  • strategy:限制模式,AUTHORITY_WHITE 为白名单模式,AUTHORITY_BLACK 为黑名单模式,默认为白名单模式

示例

比如我们希望控制对资源 test 的访问设置白名单,只有来源为 appA 和 appB 的请求才可通过,则可以配置如下白名单规则:

AuthorityRule rule = new AuthorityRule();
rule.setResource("test");
rule.setStrategy(RuleConstant.AUTHORITY_WHITE);
rule.setLimitApp("appA,appB");
AuthorityRuleManager.loadRules(Collections.singletonList(rule));

 


http://www.kler.cn/a/447870.html

相关文章:

  • Datawhale AI冬令营——Chat-悟空设计
  • 什么?Flutter 可能会被 SwiftUI/ArkUI 化?全新的 Flutter Roadmap
  • git remote -v(--verbose)显示你的 Git 仓库配置的远程仓库的详细信息
  • 【Web】0基础学Web—随机颜色、数学对象、日期及方法、定时器、倒计时
  • Web3.0安全开发实践:探索比特币DeFi生态中的PSBT
  • imx6ull qt多页面控制系统(正点原子imx系列驱动开发)
  • 重拾设计模式-外观模式和适配器模式的异同
  • 九江网站建设SEO与优化推广的完美结合
  • 【机器学习】机器学习的基本分类-强化学习-Deep Q-Network (DQN)
  • Tool之Excalidraw:Excalidraw(开源的虚拟手绘风格白板)的简介、安装和使用方法、艾米莉应用之详细攻略
  • 10.1k高星 GitHub 库:告别JSON错误:Outlines如何提升大模型的结构化输出
  • PHP阶段一
  • 分布式专题(8)之MongoDB存储原理多文档事务详解
  • Pycharm访问MongoDB数据库
  • 如何解决MQ消息积压问题?
  • 牛客网 SQL36查找后排序
  • 基于 Qt C++ 的滚动屏实现
  • Unity 碎片化空间的产生和优化
  • 本地训练controlnet网络详解——以官方fill50k数据集为例
  • 数据结构与算法再探(三)树
  • 本地电脑使用命令行上传文件至远程服务器
  • Pydantic 2.0 完整指南
  • k8s 创建密钥以及证书安装
  • Jackson 的@JsonRawValue
  • Python 自带的日期日历处理大师:calendar 库
  • Paimon 是什么?Apache Paimon简介