权限管理
权限控制不依赖任何权限管理实现,hsweb默认提供了2种权限管理的方式。

配置文件方式

application.yml
1
hsweb:
2
users:
3
admin:
4
name: 超级管理员
5
username: admin
6
password: admin
7
roles:
8
- id: admin
9
name: 管理员
10
permissions: # 用户的权限
11
- id: test #权限标识,可以理解为资源
12
actions: query,get,update,delete #用户持有对该权限的操作
13
dataAccesses: # 数据权限配置,此配置表示在对test进行query操作的时候,不能查询password和salt字段
14
- action: query # DataAccessConfig.action
15
type: DENY_FIELDS # DataAccessConfig.type
16
fields: # 由对应的DataAccessConfigConvert解析生成对应的DataAccessConfig实现
17
- password
18
- salt
Copied!

数据库方式

自定义

在某些场景默认的权限管理可能不能完全满足需求,比如:一个系统有多个用户体系,有独立用户管理系统。

替换默认的权限管理

方式一。实现AuthenticationManager接口,注入到Spring。
方式二。实现AuthenticationSupplier接口,注入到Spring。

多用户体系权限管理

hsweb提供了根据token来区分用户类型的权限信息。实现接口,ThirdPartAuthenticationManager。 与UserTokenParser中得到的tokenType一致即可。
Last modified 2yr ago