提示:本文基于es7.6.1
一、描述
- 模型
1个系统有多个策略,1个策略可以授予多个用户,1个用户有多个策略 - 关系映射
系统(1)—策略(N)----用户(N) - 更新评率
系统信息、用户信息一般不会频繁更新;而策略信息
二、方案设计
1、模型设计
采用es的父子文档模型
系统subsystem—父
策略Policy—子
用户—孙
2、示例
- 系统信息:
UM ,AD - 策略信息:
UM具有策略:新增账号,修改账号
AD具有策略:查询账号 - 用户信息;
张三具备策略:新增账号,修改账号
李四具备策略:修改账号,查询账号
三、实验开始
1.需求
2.设置Mapping
PUT /idass
{
"mappings": {
"properties": {
"subsystem": {
"properties": {
"systemId": {
"type": "keyword"
},
"systemCode": {
"type": "keyword"
},
"systemName": {
"type": "text"
}
}
},
"policy": {
"properties": {
"policyId": {
"type": "keyword"
},
"policyDoc": {
"type": "text",
"index": false
},
"policyName": {
"type": "text"
}
}
},
"user": {
"properties": {
"userId": {
"type": "keyword"
},
"userName": {
"type": "text"