65 lines
2.6 KiB
Markdown
65 lines
2.6 KiB
Markdown
---
|
|
id: default-datasource
|
|
title: 默认文本配置数据源
|
|
sidebar_label: 默认文本数据源
|
|
---
|
|
|
|
`sureness`认证鉴权当然也需要我们自己的配置数据:账户数据,角色权限数据等
|
|
这些配置数据可能来自文本,关系数据库,非关系数据库
|
|
我们提供了配置数据接口`SurenessAccountProvider`, `PathTreeProvider`, 用户可以实现此接口实现自定义配置数据源
|
|
|
|
当然我们也提供默认文本形式的配置数据实现 `DocumentResourceDefaultProvider`
|
|
用户可以创建文件`sureness.yml`来配置数据,配置样例如下:
|
|
|
|
```
|
|
## -- sureness.yml文本数据源 -- ##
|
|
|
|
# 加载到匹配字典的资源,也就是需要被保护的,设置了所支持角色访问的资源
|
|
# 没有配置的资源也默认被认证保护,但不鉴权
|
|
# eg: /api/v1/source1===get===[role2] 表示 /api/v2/host===post 这条资源支持 role2 这一种角色访问
|
|
# eg: /api/v1/source2===get===[] 表示 /api/v1/source2===get 这条资源不支持任何角色访问
|
|
resourceRole:
|
|
- /api/v1/source1===get===[role2]
|
|
- /api/v1/source1===delete===[role3]
|
|
- /api/v1/source1===put===[role1,role2]
|
|
- /api/v1/source2===get===[]
|
|
- /api/v1/source2/*/*===get===[role2]
|
|
- /api/v2/source3/*===get===[role2]
|
|
- /api/v3/source===*===[role2]
|
|
|
|
# 需要被过滤保护的资源,不认证鉴权直接访问
|
|
# /api/v1/source3===get 表示 /api/v1/source3===get 可以被任何人访问 无需登录认证鉴权
|
|
excludedResource:
|
|
- /api/v1/account/auth===post
|
|
- /api/v1/source3===get
|
|
- /**/*.html===get
|
|
- /**/*.js===get
|
|
- /**/*.css===get
|
|
- /**/*.ico===get
|
|
- /**/*.png===*
|
|
|
|
# 用户账户信息
|
|
# 下面有 admin root tom三个账户
|
|
# eg: admin 拥有[role1,role2]角色,明文密码为admin,加盐密码为0192023A7BBD73250516F069DF18B500
|
|
# eg: root 拥有[role1],密码为明文23456
|
|
# eg: tom 拥有[role3],密码为明文32113
|
|
account:
|
|
- appId: admin
|
|
# 如果填写了加密盐--salt,则credential为MD5(password+salt)的32位结果
|
|
# 没有盐认为不加密,credential为明文
|
|
# 若对密码加盐 则不支持digest认证
|
|
credential: 0192023A7BBD73250516F069DF18B500
|
|
salt: 123
|
|
role: [role1,role2]
|
|
- appId: root
|
|
credential: 23456
|
|
role: [role1]
|
|
- appId: tom
|
|
credential: 32113
|
|
role: [role3]
|
|
|
|
```
|
|
|
|
我们提供了默认文本数据源使用`DEMO`,默认文本数据源具体实现,请参考 [一步一步搭建认证鉴权系统](/docs/help/sample-bootstrap)
|
|
当然数据源也可以来自数据库等存储,我们提供了接口让用户轻松的自定义数据源,详见[自定义数据源](/docs/advanced/custom-datasource)
|