全部产品

服务鉴权

更新时间:2020-07-23 15:43:08

SOFAStack 控制台 > 中间件 > 微服务平台 > 微服务 页面,通过左侧导航栏可进入 服务管控 页面。点击 服务 ID,进入服务详情,通过 服务鉴权 页签,可以创建访问控制的 白名单黑名单

通过创建访问控制规则,RPC 服务的提供者可以为特定的调用者添加或限制访问授权,灵活地调整服务订阅者调用本服务的权限。

访问控制

白名单与黑名单

访问控制可通过设置 白名单(whitelist)或 黑名单(blacklist)完成。白名单与黑名单互斥,二者无法同时开启。

  • 白名单模式:只有符合白名单规则的服务调用者有访问权限。白名单外的所有请求都会被拒绝。
  • 黑名单模式:所有符合黑名单规则的服务调用者将被拒绝访问。黑名单外的所有请求都被允许。

服务鉴权

匹配规则

主要原则如下:

  • 白名单与黑名单均由一条或多条规则构成。
  • 多条规则间用 (OR)的关系连接。
  • 一旦名单被启用,访问请求只要满足其中任意一条已启用的规则,即被视为满足过滤条件。
  • 只有处于“已启用”状态的规则才被用来做访问请求的规则匹配。

规则构成

  • 规则名:由汉字、英文字母、数字、下划线组成。
  • 状态:已启用 或 已禁用。
  • 匹配条件:一条规则由一个或多个匹配条件构成,多个匹配条件间用 的关系连接。
  • 操作:编辑规则、删除规则。

匹配条件

规则匹配条件支持使用系统字段或自定义字段做匹配。

  • 系统字段
    • 调用方应用名
    • 调用方 IP
    • 服务方应用名
    • 服务方服务名
    • 服务方方法名
  • 自定义字段:支持自定义字段名。
  • 逻辑关系(操作符):
    • 等于
    • 不等于
    • 属于
    • 不属于
    • 正则:使用正则表达式匹配。
  • 字段值