当您的某个微服务应用有安全要求,不希望其它所有应用都能调用时,可以对调用该应用的其它应用进行鉴权,仅允许匹配鉴权规则的应用调用。
背景信息
下面以一个示例介绍Dubbo服务鉴权的使用场景。
Consumer 1、2、3和Provider在同一个命名空间内,Consumer 1、2和3默认可以调用Provider的所有服务和接口。

可以对Provider的所有服务和接口设置鉴权方式,例如Provider所有服务和接口对Consumer 1的鉴权方式设置为黑名单(拒绝调用),则Consumer
2、3的鉴权方式为白名单(允许调用)。
在此基础上,还可以设置Consumer指定服务和接口的鉴权方式,例如按所有接口的鉴权方式,Consumer 2、3可以访问Provider的所有服务和接口,但Provider的服务和接口2涉及一些核心业务或数据,不希望Consumer
2调用,可以将服务和接口2对Consumer 2的鉴权方式设置为黑名单(拒绝调用),则Consumer 2只能访问Provider的服务和接口1和服务和接口3。
设置完鉴权规则的调用示意如下图所示。
创建服务鉴权规则
- 登录EDAS控制台。
- 在左侧导航栏,选择。
- 在Dubbo左侧导航栏单击服务鉴权。
- 在服务鉴权页面单击创建规则。
- 在创建规则面板设置服务鉴权参数,然后单击确定。

服务鉴权规则参数说明:
参数 |
说明 |
微服务空间 |
服务所在的地域和微服务空间。
|
规则名称 |
鉴权规则名称,支持大小写字母、数字、下划线(_)和短划线(-),长度不超过64个字符。 |
被调用方框架 |
被调用的应用所使用的框架,选择Dubbo。
|
被调用方 |
被调用的应用。 |
添加所有接口规则
|
被调用方 |
默认为所有服务/所有接口,不可设置。
|
鉴权方式 |
服务鉴权的方式,包含白名单(允许调用)和黑名单(拒绝调用),请根据实际鉴权需求选择。
|
调用方 |
需要鉴权的调用方应用,可以单击添加调用方设置多个需要鉴权的调用方应用。
|
添加指定接口规则
注意 指定接口添加的规则不是追加,而是覆盖针对所有接口的通用规则,请谨慎配置。
|
被调用方接口 |
指定被调用应用的服务和接口。 |
鉴权方式 |
服务鉴权的方式,包含白名单(允许调用)和黑名单(拒绝调用),请根据实际鉴权需求选择。
|
调用方 |
需要鉴权的调用方应用,可以单击添加调用方设置多个需要鉴权的调用方应用。
|
默认状态 |
规则的启用开关。
- 打开:创建后即启用,默认打开。
- 关闭:创建后不启用,需要在服务鉴权页面规则的操作列单击开启。
|
结果验证
服务鉴权规则配置完成且开启后,请根据实际业务验证服务鉴权规则是否生效。
后续步骤
服务鉴权规则创建完成后,您还可以编辑规则、根据规则的不同状态关闭规则或开启规则。当不再需要服务鉴权时,删除规则。