当您的某个微服务应用有安全要求,不希望其它所有应用都能调用时,可以对调用该应用的其它应用进行鉴权,仅允许匹配鉴权规则的应用调用。
背景信息
下面以一个示例介绍服务鉴权的使用场景。
- 未配置服务鉴权
Consumer 1、2、3和Provider在同一个命名空间内,Consumer 1、2和3默认可以调用Provider的所有Path(Path 1、2和3)。
- 配置服务鉴权
- 设置所有Path的鉴权
可以对Provider的所有Path设置鉴权规则,例如Provider所有Path对Consumer 1的鉴权方式设置为黑名单(拒绝调用),则Consumer 2、3的鉴权方式为白名单(允许调用)。
- 设置指定Path的鉴权
在设置所有Path的鉴权基础上,还可以设置Consumer指定Path的鉴权规则,例如按所有Path的鉴权方式,Consumer 2、3可以访问Provider的所有Path,但Provider的Path 2涉及一些核心业务或数据,不希望Consumer 2调用,可以将Path 2对Consumer 2的鉴权方式设置为黑名单(拒绝调用),则Consumer 2只能访问Provider的Path 1和Path 3。
设置完鉴权规则的调用示意如下图所示。
- 设置所有Path的鉴权
创建服务鉴权规则
结果验证
服务鉴权规则配置完成且开启后,请根据实际业务验证服务鉴权规则是否生效。