一.问题

最近收到一位朋友的求助,说他项目上的权限授权出现了问题,现象是在基础服务授权角色:RC 权限:X.Default,在基础服务使用RC角色的用户登录能访问到权限X.Default资源,而在X服务访问不到。重启X服务后就可以访问。


(资料图片)

项目框架:ABP Vnext 6.0版本

数据库:共享一个

微服务架构如下:

100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":140,"w":62.80000305175781,"x":169.1999969482422,"h":62.80000305175781,"y":5082.787377893646,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_SRXnbqxcMk182765","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_NaZUTjbROA806188","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee26514e4b0b788a9330a81.svg"},"theme":{},"id":"CePHcSVSCo502730","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"mse 微服务引擎100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":142,"w":43.40000915527344,"x":350.22499084472656,"h":44.80000305175781,"y":5049.128169275016,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_dztuDlrGGr846397","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_zXnKGePnWs895574","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee2655ce4b0b788a9331514.svg"},"theme":{},"id":"QpIgXuOPsv425759","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"内部网关"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"MgpaFysxDu765516","type":"number","category":"default","value":""},{"name":"名称","id":"HEAGJKMXRQ191878","type":"string","category":"default","value":""},{"name":"所有者","id":"yNHijqCcPZ964090","type":"string","category":"default","value":""},{"name":"连接","id":"uiyEnrrAce589682","type":"link","category":"default","value":""},{"name":"便笺","id":"EwSXbidEve378868","type":"string","category":"default","value":""}],"props":{"zindex":146,"w":100,"x":151.84436261377635,"h":40,"y":5140.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"IlSkgIXQct529247","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"基础服务"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"vJMJbuzqls909122","type":"number","category":"default","value":""},{"name":"名称","id":"CNrVroFPhh423111","type":"string","category":"default","value":""},{"name":"所有者","id":"sBheAVQPMr575341","type":"string","category":"default","value":""},{"name":"连接","id":"EUmJdURspw666477","type":"link","category":"default","value":""},{"name":"便笺","id":"fPyDbHcOgd125782","type":"string","category":"default","value":""}],"props":{"zindex":148,"w":100,"x":324.625,"h":40,"y":5087.649877130707,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"klfeaQLJpp963887","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"X服务"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"RnYOWsVGLt406992","type":"number","category":"default","value":""},{"name":"名称","id":"AdedxWwiMK567861","type":"string","category":"default","value":""},{"name":"所有者","id":"nkJGDhealu228264","type":"string","category":"default","value":""},{"name":"连接","id":"DYkhTturtF686510","type":"link","category":"default","value":""},{"name":"便笺","id":"YmYxcZcpqB434438","type":"string","category":"default","value":""}],"props":{"zindex":149,"w":100,"x":324.625,"h":40,"y":5209.58311904087,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"abKmKnarPv486218","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"mse 微服务引擎100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":151,"w":43.40000915527344,"x":352.9249954223633,"h":44.80000305175781,"y":5161.183117514991,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_dztuDlrGGr846397","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_zXnKGePnWs895574","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee2655ce4b0b788a9331514.svg"},"theme":{},"id":"xqXQKHMKKX924076","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"id":"eACAGVRSVT581988","name":"image_search_omPmVDzfjs037523","title":"dg 数据库网关100x100","category":"search","group":"","groupName":"image_search_EKxVXeYxaI412175","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":525.3874855041504,"y":5087.649877130707,"w":53.07500457763672,"h":53.07500457763672,"zindex":162,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5ee26513e4b0b788a9330a5e.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w-20","x":10,"h":"h","y":0},"text":"X服务接口层"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"圆角矩形","fontStyle":{},"dataAttributes":[{"name":"序号","id":"eyUqVEttPk442024","type":"number","category":"default","value":""},{"name":"名称","id":"ByJIGvOvut601208","type":"string","category":"default","value":""},{"name":"所有者","id":"WSnHtWrLlb139610","type":"string","category":"default","value":""},{"name":"连接","id":"RMCgnlzZlQ641617","type":"link","category":"default","value":""},{"name":"便笺","id":"birrlXFsuh528240","type":"string","category":"default","value":""}],"props":{"zindex":166,"w":100.39999389648438,"x":327.59999084472656,"h":28,"y":4985.128169275016,"angle":0},"path":[{"actions":[{"x":"0","action":"move","y":"4"},{"y1":"0","x":"4","action":"quadraticCurve","x1":"0","y":"0"},{"x":"w-4","action":"line","y":"0"},{"y1":"0","x":"w","action":"quadraticCurve","x1":"w","y":"4"},{"x":"w","action":"line","y":"h-4"},{"y1":"h","x":"w-4","action":"quadraticCurve","x1":"w","y":"h"},{"x":"4","action":"line","y":"h"},{"y1":"h","x":"0","action":"quadraticCurve","x1":"0","y":"h-4"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"roundRectangle","fillStyle":{},"theme":{},"id":"jIIxgDltLj435847","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"id":"glndYKENpv941714","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":449.0234269324669,"y":5071.528170800895},{"x":469.9890585716835,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":167},"lineStyle":{},"from":{"x":393.625,"y":5071.528170800895,"angle":3.141592653589793,"id":"QpIgXuOPsv425759"},"to":{"id":"eACAGVRSVT581988","x":525.3874855041504,"y":5114.187379419525,"angle":0},"textBlock":[]},{"id":"BMHeTNpbRK992901","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":454.9395320062531,"y":5183.58311904087},{"x":466.772958075534,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":168},"lineStyle":{},"from":{"x":396.3250045776367,"y":5183.58311904087,"angle":3.141592653589793,"id":"xqXQKHMKKX924076"},"to":{"id":"eACAGVRSVT581988","x":525.3874855041504,"y":5114.187379419525,"angle":0},"textBlock":[]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"共享数据库"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"lMDdRqsTvd023534","type":"number","category":"default","value":""},{"name":"名称","id":"WUsNzlqMCD501704","type":"string","category":"default","value":""},{"name":"所有者","id":"MuYfsDktiv268032","type":"string","category":"default","value":""},{"name":"连接","id":"xQRgUCEEmd418823","type":"link","category":"default","value":""},{"name":"便笺","id":"ybEJGBVxzb792609","type":"string","category":"default","value":""}],"props":{"zindex":170,"w":100,"x":501.72499084472656,"h":40,"y":5135.58311904087,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"tPVVJKIWaO466640","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"id":"zCDyigGapw466923","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":441.4722125784732,"y":4999.128169275016},{"x":448.1277630074643,"y":4996.800003051758}],"locked":false,"dataAttributes":[],"props":{"zindex":171},"lineStyle":{"lineStyle":"dashed","lineWidth":0.5},"from":{"x":427.99998474121094,"y":4999.128169275016,"angle":3.141592653589793,"id":"jIIxgDltLj435847"},"to":{"id":"iNdMFzbSHw808726","x":461.59999084472656,"y":4996.800003051758,"angle":0},"textBlock":[]},{"id":"iNdMFzbSHw808726","name":"note","title":"备注","category":"basic","group":"","groupName":null,"locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[{"name":"序号","type":"number","value":"","category":"default","id":"ASHgxVzYaU764896"},{"name":"名称","type":"string","value":"","category":"default","id":"nHBcROOXBc873041"},{"name":"所有者","type":"string","value":"","category":"default","id":"tRMmeDnDHC193550"},{"name":"连接","type":"link","value":"","category":"default","id":"yizxLdRqCD687011"},{"name":"便笺","type":"string","value":"","category":"default","id":"UvYnCZJVnM851320"}],"props":{"x":459.72499084472656,"y":4946.800003051758,"w":100,"h":100,"zindex":172,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{"lineWidth":0},"fillStyle":{"color":"255, 247, 188"},"theme":{},"path":[{"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w-16","y":"0"},{"action":"line","x":"w","y":"16"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"line","x":"0","y":"0"},{"action":"close"}]},{"fillStyle":{"type":"solid","color":"228,208,137"},"actions":[{"action":"move","x":"w-16","y":"0"},{"action":"line","x":"w-16","y":"16"},{"action":"line","x":"w","y":"16"},{"action":"close"}]},{"fillStyle":{"type":"none"},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w-16","y":"0"},{"action":"line","x":"w","y":"16"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"line","x":"0","y":"0"},{"action":"close"}]}],"fontStyle":{},"textBlock":[{"position":{"x":10,"y":10,"w":"w-20","h":"h-20"},"text":"权限资源:X.Default"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"lYOtDdcrbc766767","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":377.79998779296875,"y":5027.718662263835},{"x":371.9249954223633,"y":5034.537676286198}],"locked":false,"dataAttributes":[],"props":{"zindex":173},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dashed","lineWidth":0.5},"from":{"x":377.79998779296875,"y":5013.128169275016,"angle":4.71238898038469,"id":"jIIxgDltLj435847"},"to":{"id":"QpIgXuOPsv425759","x":371.9249954223633,"y":5049.128169275016,"angle":1.570796326794897},"textBlock":[]},{"id":"smaWRIasqW196499","name":"image_search_ZSqDwUrfHD771753","title":"用户100x100","category":"search","group":"","groupName":"image_search_mMVREFQEhh084378","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":25.599990844726562,"y":5095.054001900486,"w":39.69999694824219,"h":38.26675503807928,"zindex":174,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5ee261f5e4b0b788a932a61e.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"fmFahZwHSH593157","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":106.8599914550781,"y":5114.187379419525},{"x":127.63999328613284,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":175},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":65.29998779296875,"y":5114.187379419525,"angle":3.141592653589793,"id":"smaWRIasqW196499"},"to":{"id":"CePHcSVSCo502730","x":169.1999969482422,"y":5114.187379419525,"angle":0},"textBlock":[]},{"id":"mODSnMGGeB757792","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":287.7689852093323,"y":5114.187379419525},{"x":297.156010213031,"y":5183.58311904087}],"locked":false,"dataAttributes":[],"props":{"zindex":177},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":232,"y":5114.187379419525,"angle":3.1415926535897927,"id":"CePHcSVSCo502730"},"to":{"id":"xqXQKHMKKX924076","x":352.9249954223633,"y":5183.58311904087,"angle":0},"textBlock":[]},{"id":"KcxOXjNCIy728491","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":282.27437763346813,"y":5114.187379419525},{"x":299.9506132112584,"y":5071.528170800895}],"locked":false,"dataAttributes":[],"props":{"zindex":178},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":232,"y":5114.187379419525,"angle":3.141592653589793,"id":"CePHcSVSCo502730"},"to":{"id":"QpIgXuOPsv425759","x":350.22499084472656,"y":5071.528170800895,"angle":0},"textBlock":[]},{"id":"JHAvTOUbpe342317","name":"image_search_BBogpawNXy669254","title":"缓存100x100","category":"search","group":"","groupName":"image_search_CeBSomMIyY657468","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":442.3249969482422,"y":5209.076864844703,"w":41.82501983642578,"h":41.012508392333984,"zindex":179,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5f86b7ffe4b004e8a0607237.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"UUcEybvLLm427282","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":437.3999938964844,"y":5208.062299310883},{"x":413.646783573569,"y":5229.58311904087}],"locked":false,"dataAttributes":[],"props":{"zindex":180},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dot","lineWidth":0.5},"from":{"x":374.625,"y":5205.983120566749,"angle":4.71238898038469,"id":"xqXQKHMKKX924076"},"to":{"id":"JHAvTOUbpe342317","x":442.3249969482422,"y":5229.58311904087,"angle":0},"textBlock":[]},{"id":"VRnUrGHFJz780381","name":"image_search_BBogpawNXy669254","title":"缓存100x100","category":"search","group":"","groupName":"image_search_CeBSomMIyY657468","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":269.1749801635742,"y":5013.128169275016,"w":41.82501983642578,"h":41.012508392333984,"zindex":181,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5f86b7ffe4b004e8a0607237.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"bBXRbKZGwg938100","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":371.9249954223633,"y":5023.982477870726},{"x":336.14569140429046,"y":5033.634423471183}],"locked":false,"dataAttributes":[],"props":{"zindex":182},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dot","lineWidth":0.5},"from":{"x":371.9249954223633,"y":5049.128169275016,"angle":1.570796326794897,"id":"QpIgXuOPsv425759"},"to":{"id":"VRnUrGHFJz780381","x":311,"y":5033.634423471183,"angle":3.1415926535897927},"textBlock":[]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"应用缓存"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"LEYrYnvivO667850","type":"number","category":"default","value":""},{"name":"名称","id":"uSFWNXQvxd384604","type":"string","category":"default","value":""},{"name":"所有者","id":"VVJZwPIfdN075878","type":"string","category":"default","value":""},{"name":"连接","id":"twxnxuyySh642325","type":"link","category":"default","value":""},{"name":"便笺","id":"NxQGPZpzCB063093","type":"string","category":"default","value":""}],"props":{"zindex":183,"w":100,"x":418.72499084472656,"h":40,"y":5240.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"usGXsEHCFW910564","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"应用缓存"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"QauTyThUMD847743","type":"number","category":"default","value":""},{"name":"名称","id":"AcqUULxbKQ145736","type":"string","category":"default","value":""},{"name":"所有者","id":"oNihaDINtA459856","type":"string","category":"default","value":""},{"name":"连接","id":"ZHgUTickPv254344","type":"link","category":"default","value":""},{"name":"便笺","id":"WanrbPkgnY191362","type":"string","category":"default","value":""}],"props":{"zindex":184,"w":100,"x":241.89998626708984,"h":40,"y":5038.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"gFzJCKoayw757105","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""}],"client":"1686880026397eBdLGDoGCD803192"}">100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":140,"w":62.80000305175781,"x":169.1999969482422,"h":62.80000305175781,"y":5082.787377893646,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_SRXnbqxcMk182765","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_NaZUTjbROA806188","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee26514e4b0b788a9330a81.svg"},"theme":{},"id":"CePHcSVSCo502730","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"mse 微服务引擎100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":142,"w":43.40000915527344,"x":350.22499084472656,"h":44.80000305175781,"y":5049.128169275016,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_dztuDlrGGr846397","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_zXnKGePnWs895574","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee2655ce4b0b788a9331514.svg"},"theme":{},"id":"QpIgXuOPsv425759","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"内部网关"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"MgpaFysxDu765516","type":"number","category":"default","value":""},{"name":"名称","id":"HEAGJKMXRQ191878","type":"string","category":"default","value":""},{"name":"所有者","id":"yNHijqCcPZ964090","type":"string","category":"default","value":""},{"name":"连接","id":"uiyEnrrAce589682","type":"link","category":"default","value":""},{"name":"便笺","id":"EwSXbidEve378868","type":"string","category":"default","value":""}],"props":{"zindex":146,"w":100,"x":151.84436261377635,"h":40,"y":5140.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"IlSkgIXQct529247","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"基础服务"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"vJMJbuzqls909122","type":"number","category":"default","value":""},{"name":"名称","id":"CNrVroFPhh423111","type":"string","category":"default","value":""},{"name":"所有者","id":"sBheAVQPMr575341","type":"string","category":"default","value":""},{"name":"连接","id":"EUmJdURspw666477","type":"link","category":"default","value":""},{"name":"便笺","id":"fPyDbHcOgd125782","type":"string","category":"default","value":""}],"props":{"zindex":148,"w":100,"x":324.625,"h":40,"y":5087.649877130707,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"klfeaQLJpp963887","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"X服务"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"RnYOWsVGLt406992","type":"number","category":"default","value":""},{"name":"名称","id":"AdedxWwiMK567861","type":"string","category":"default","value":""},{"name":"所有者","id":"nkJGDhealu228264","type":"string","category":"default","value":""},{"name":"连接","id":"DYkhTturtF686510","type":"link","category":"default","value":""},{"name":"便笺","id":"YmYxcZcpqB434438","type":"string","category":"default","value":""}],"props":{"zindex":149,"w":100,"x":324.625,"h":40,"y":5209.58311904087,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"abKmKnarPv486218","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"mse 微服务引擎100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":151,"w":43.40000915527344,"x":352.9249954223633,"h":44.80000305175781,"y":5161.183117514991,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_dztuDlrGGr846397","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_zXnKGePnWs895574","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee2655ce4b0b788a9331514.svg"},"theme":{},"id":"xqXQKHMKKX924076","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"id":"eACAGVRSVT581988","name":"image_search_omPmVDzfjs037523","title":"dg 数据库网关100x100","category":"search","group":"","groupName":"image_search_EKxVXeYxaI412175","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":525.3874855041504,"y":5087.649877130707,"w":53.07500457763672,"h":53.07500457763672,"zindex":162,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5ee26513e4b0b788a9330a5e.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w-20","x":10,"h":"h","y":0},"text":"X服务接口层"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"圆角矩形","fontStyle":{},"dataAttributes":[{"name":"序号","id":"eyUqVEttPk442024","type":"number","category":"default","value":""},{"name":"名称","id":"ByJIGvOvut601208","type":"string","category":"default","value":""},{"name":"所有者","id":"WSnHtWrLlb139610","type":"string","category":"default","value":""},{"name":"连接","id":"RMCgnlzZlQ641617","type":"link","category":"default","value":""},{"name":"便笺","id":"birrlXFsuh528240","type":"string","category":"default","value":""}],"props":{"zindex":166,"w":100.39999389648438,"x":327.59999084472656,"h":28,"y":4985.128169275016,"angle":0},"path":[{"actions":[{"x":"0","action":"move","y":"4"},{"y1":"0","x":"4","action":"quadraticCurve","x1":"0","y":"0"},{"x":"w-4","action":"line","y":"0"},{"y1":"0","x":"w","action":"quadraticCurve","x1":"w","y":"4"},{"x":"w","action":"line","y":"h-4"},{"y1":"h","x":"w-4","action":"quadraticCurve","x1":"w","y":"h"},{"x":"4","action":"line","y":"h"},{"y1":"h","x":"0","action":"quadraticCurve","x1":"0","y":"h-4"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"roundRectangle","fillStyle":{},"theme":{},"id":"jIIxgDltLj435847","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"id":"glndYKENpv941714","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":449.0234269324669,"y":5071.528170800895},{"x":469.9890585716835,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":167},"lineStyle":{},"from":{"x":393.625,"y":5071.528170800895,"angle":3.141592653589793,"id":"QpIgXuOPsv425759"},"to":{"id":"eACAGVRSVT581988","x":525.3874855041504,"y":5114.187379419525,"angle":0},"textBlock":[]},{"id":"BMHeTNpbRK992901","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":454.9395320062531,"y":5183.58311904087},{"x":466.772958075534,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":168},"lineStyle":{},"from":{"x":396.3250045776367,"y":5183.58311904087,"angle":3.141592653589793,"id":"xqXQKHMKKX924076"},"to":{"id":"eACAGVRSVT581988","x":525.3874855041504,"y":5114.187379419525,"angle":0},"textBlock":[]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"共享数据库"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"lMDdRqsTvd023534","type":"number","category":"default","value":""},{"name":"名称","id":"WUsNzlqMCD501704","type":"string","category":"default","value":""},{"name":"所有者","id":"MuYfsDktiv268032","type":"string","category":"default","value":""},{"name":"连接","id":"xQRgUCEEmd418823","type":"link","category":"default","value":""},{"name":"便笺","id":"ybEJGBVxzb792609","type":"string","category":"default","value":""}],"props":{"zindex":170,"w":100,"x":501.72499084472656,"h":40,"y":5135.58311904087,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"tPVVJKIWaO466640","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"id":"zCDyigGapw466923","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":441.4722125784732,"y":4999.128169275016},{"x":448.1277630074643,"y":4996.800003051758}],"locked":false,"dataAttributes":[],"props":{"zindex":171},"lineStyle":{"lineStyle":"dashed","lineWidth":0.5},"from":{"x":427.99998474121094,"y":4999.128169275016,"angle":3.141592653589793,"id":"jIIxgDltLj435847"},"to":{"id":"iNdMFzbSHw808726","x":461.59999084472656,"y":4996.800003051758,"angle":0},"textBlock":[]},{"id":"iNdMFzbSHw808726","name":"note","title":"备注","category":"basic","group":"","groupName":null,"locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[{"name":"序号","type":"number","value":"","category":"default","id":"ASHgxVzYaU764896"},{"name":"名称","type":"string","value":"","category":"default","id":"nHBcROOXBc873041"},{"name":"所有者","type":"string","value":"","category":"default","id":"tRMmeDnDHC193550"},{"name":"连接","type":"link","value":"","category":"default","id":"yizxLdRqCD687011"},{"name":"便笺","type":"string","value":"","category":"default","id":"UvYnCZJVnM851320"}],"props":{"x":459.72499084472656,"y":4946.800003051758,"w":100,"h":100,"zindex":172,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{"lineWidth":0},"fillStyle":{"color":"255, 247, 188"},"theme":{},"path":[{"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w-16","y":"0"},{"action":"line","x":"w","y":"16"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"line","x":"0","y":"0"},{"action":"close"}]},{"fillStyle":{"type":"solid","color":"228,208,137"},"actions":[{"action":"move","x":"w-16","y":"0"},{"action":"line","x":"w-16","y":"16"},{"action":"line","x":"w","y":"16"},{"action":"close"}]},{"fillStyle":{"type":"none"},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w-16","y":"0"},{"action":"line","x":"w","y":"16"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"line","x":"0","y":"0"},{"action":"close"}]}],"fontStyle":{},"textBlock":[{"position":{"x":10,"y":10,"w":"w-20","h":"h-20"},"text":"权限资源:X.Default"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"lYOtDdcrbc766767","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":377.79998779296875,"y":5027.718662263835},{"x":371.9249954223633,"y":5034.537676286198}],"locked":false,"dataAttributes":[],"props":{"zindex":173},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dashed","lineWidth":0.5},"from":{"x":377.79998779296875,"y":5013.128169275016,"angle":4.71238898038469,"id":"jIIxgDltLj435847"},"to":{"id":"QpIgXuOPsv425759","x":371.9249954223633,"y":5049.128169275016,"angle":1.570796326794897},"textBlock":[]},{"id":"smaWRIasqW196499","name":"image_search_ZSqDwUrfHD771753","title":"用户100x100","category":"search","group":"","groupName":"image_search_mMVREFQEhh084378","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":25.599990844726562,"y":5095.054001900486,"w":39.69999694824219,"h":38.26675503807928,"zindex":174,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5ee261f5e4b0b788a932a61e.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"fmFahZwHSH593157","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":106.8599914550781,"y":5114.187379419525},{"x":127.63999328613284,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":175},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":65.29998779296875,"y":5114.187379419525,"angle":3.141592653589793,"id":"smaWRIasqW196499"},"to":{"id":"CePHcSVSCo502730","x":169.1999969482422,"y":5114.187379419525,"angle":0},"textBlock":[]},{"id":"mODSnMGGeB757792","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":287.7689852093323,"y":5114.187379419525},{"x":297.156010213031,"y":5183.58311904087}],"locked":false,"dataAttributes":[],"props":{"zindex":177},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":232,"y":5114.187379419525,"angle":3.1415926535897927,"id":"CePHcSVSCo502730"},"to":{"id":"xqXQKHMKKX924076","x":352.9249954223633,"y":5183.58311904087,"angle":0},"textBlock":[]},{"id":"KcxOXjNCIy728491","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":282.27437763346813,"y":5114.187379419525},{"x":299.9506132112584,"y":5071.528170800895}],"locked":false,"dataAttributes":[],"props":{"zindex":178},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":232,"y":5114.187379419525,"angle":3.141592653589793,"id":"CePHcSVSCo502730"},"to":{"id":"QpIgXuOPsv425759","x":350.22499084472656,"y":5071.528170800895,"angle":0},"textBlock":[]},{"id":"JHAvTOUbpe342317","name":"image_search_BBogpawNXy669254","title":"缓存100x100","category":"search","group":"","groupName":"image_search_CeBSomMIyY657468","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":442.3249969482422,"y":5209.076864844703,"w":41.82501983642578,"h":41.012508392333984,"zindex":179,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5f86b7ffe4b004e8a0607237.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"UUcEybvLLm427282","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":437.3999938964844,"y":5208.062299310883},{"x":413.646783573569,"y":5229.58311904087}],"locked":false,"dataAttributes":[],"props":{"zindex":180},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dot","lineWidth":0.5},"from":{"x":374.625,"y":5205.983120566749,"angle":4.71238898038469,"id":"xqXQKHMKKX924076"},"to":{"id":"JHAvTOUbpe342317","x":442.3249969482422,"y":5229.58311904087,"angle":0},"textBlock":[]},{"id":"VRnUrGHFJz780381","name":"image_search_BBogpawNXy669254","title":"缓存100x100","category":"search","group":"","groupName":"image_search_CeBSomMIyY657468","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":269.1749801635742,"y":5013.128169275016,"w":41.82501983642578,"h":41.012508392333984,"zindex":181,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5f86b7ffe4b004e8a0607237.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"bBXRbKZGwg938100","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":371.9249954223633,"y":5023.982477870726},{"x":336.14569140429046,"y":5033.634423471183}],"locked":false,"dataAttributes":[],"props":{"zindex":182},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dot","lineWidth":0.5},"from":{"x":371.9249954223633,"y":5049.128169275016,"angle":1.570796326794897,"id":"QpIgXuOPsv425759"},"to":{"id":"VRnUrGHFJz780381","x":311,"y":5033.634423471183,"angle":3.1415926535897927},"textBlock":[]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"应用缓存"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"LEYrYnvivO667850","type":"number","category":"default","value":""},{"name":"名称","id":"uSFWNXQvxd384604","type":"string","category":"default","value":""},{"name":"所有者","id":"VVJZwPIfdN075878","type":"string","category":"default","value":""},{"name":"连接","id":"twxnxuyySh642325","type":"link","category":"default","value":""},{"name":"便笺","id":"NxQGPZpzCB063093","type":"string","category":"default","value":""}],"props":{"zindex":183,"w":100,"x":418.72499084472656,"h":40,"y":5240.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"usGXsEHCFW910564","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"应用缓存"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"QauTyThUMD847743","type":"number","category":"default","value":""},{"name":"名称","id":"AcqUULxbKQ145736","type":"string","category":"default","value":""},{"name":"所有者","id":"oNihaDINtA459856","type":"string","category":"default","value":""},{"name":"连接","id":"ZHgUTickPv254344","type":"link","category":"default","value":""},{"name":"便笺","id":"WanrbPkgnY191362","type":"string","category":"default","value":""}],"props":{"zindex":184,"w":100,"x":241.89998626708984,"h":40,"y":5038.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"gFzJCKoayw757105","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""}],"client":"1686880026397eBdLGDoGCD803192"}">100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":140,"w":62.80000305175781,"x":169.1999969482422,"h":62.80000305175781,"y":5082.787377893646,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_SRXnbqxcMk182765","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_NaZUTjbROA806188","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee26514e4b0b788a9330a81.svg"},"theme":{},"id":"CePHcSVSCo502730","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"mse 微服务引擎100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":142,"w":43.40000915527344,"x":350.22499084472656,"h":44.80000305175781,"y":5049.128169275016,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_dztuDlrGGr846397","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_zXnKGePnWs895574","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee2655ce4b0b788a9331514.svg"},"theme":{},"id":"QpIgXuOPsv425759","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"内部网关"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"MgpaFysxDu765516","type":"number","category":"default","value":""},{"name":"名称","id":"HEAGJKMXRQ191878","type":"string","category":"default","value":""},{"name":"所有者","id":"yNHijqCcPZ964090","type":"string","category":"default","value":""},{"name":"连接","id":"uiyEnrrAce589682","type":"link","category":"default","value":""},{"name":"便笺","id":"EwSXbidEve378868","type":"string","category":"default","value":""}],"props":{"zindex":146,"w":100,"x":151.84436261377635,"h":40,"y":5140.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"IlSkgIXQct529247","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"基础服务"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"vJMJbuzqls909122","type":"number","category":"default","value":""},{"name":"名称","id":"CNrVroFPhh423111","type":"string","category":"default","value":""},{"name":"所有者","id":"sBheAVQPMr575341","type":"string","category":"default","value":""},{"name":"连接","id":"EUmJdURspw666477","type":"link","category":"default","value":""},{"name":"便笺","id":"fPyDbHcOgd125782","type":"string","category":"default","value":""}],"props":{"zindex":148,"w":100,"x":324.625,"h":40,"y":5087.649877130707,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"klfeaQLJpp963887","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"X服务"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"RnYOWsVGLt406992","type":"number","category":"default","value":""},{"name":"名称","id":"AdedxWwiMK567861","type":"string","category":"default","value":""},{"name":"所有者","id":"nkJGDhealu228264","type":"string","category":"default","value":""},{"name":"连接","id":"DYkhTturtF686510","type":"link","category":"default","value":""},{"name":"便笺","id":"YmYxcZcpqB434438","type":"string","category":"default","value":""}],"props":{"zindex":149,"w":100,"x":324.625,"h":40,"y":5209.58311904087,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"abKmKnarPv486218","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"mse 微服务引擎100x100","fontStyle":{},"dataAttributes":[],"props":{"zindex":151,"w":43.40000915527344,"x":352.9249954223633,"h":44.80000305175781,"y":5161.183117514991,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"groupName":"image_search_dztuDlrGGr846397","lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"image_search_zXnKGePnWs895574","fillStyle":{"imageW":100,"display":"stretch","imageH":100,"type":"image","fileId":"https://iconsapi.com/5ee2655ce4b0b788a9331514.svg"},"theme":{},"id":"xqXQKHMKKX924076","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"search","locked":false,"group":""},{"id":"eACAGVRSVT581988","name":"image_search_omPmVDzfjs037523","title":"dg 数据库网关100x100","category":"search","group":"","groupName":"image_search_EKxVXeYxaI412175","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":525.3874855041504,"y":5087.649877130707,"w":53.07500457763672,"h":53.07500457763672,"zindex":162,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5ee26513e4b0b788a9330a5e.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w-20","x":10,"h":"h","y":0},"text":"X服务接口层"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"圆角矩形","fontStyle":{},"dataAttributes":[{"name":"序号","id":"eyUqVEttPk442024","type":"number","category":"default","value":""},{"name":"名称","id":"ByJIGvOvut601208","type":"string","category":"default","value":""},{"name":"所有者","id":"WSnHtWrLlb139610","type":"string","category":"default","value":""},{"name":"连接","id":"RMCgnlzZlQ641617","type":"link","category":"default","value":""},{"name":"便笺","id":"birrlXFsuh528240","type":"string","category":"default","value":""}],"props":{"zindex":166,"w":100.39999389648438,"x":327.59999084472656,"h":28,"y":4985.128169275016,"angle":0},"path":[{"actions":[{"x":"0","action":"move","y":"4"},{"y1":"0","x":"4","action":"quadraticCurve","x1":"0","y":"0"},{"x":"w-4","action":"line","y":"0"},{"y1":"0","x":"w","action":"quadraticCurve","x1":"w","y":"4"},{"x":"w","action":"line","y":"h-4"},{"y1":"h","x":"w-4","action":"quadraticCurve","x1":"w","y":"h"},{"x":"4","action":"line","y":"h"},{"y1":"h","x":"0","action":"quadraticCurve","x1":"0","y":"h-4"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"roundRectangle","fillStyle":{},"theme":{},"id":"jIIxgDltLj435847","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"id":"glndYKENpv941714","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":449.0234269324669,"y":5071.528170800895},{"x":469.9890585716835,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":167},"lineStyle":{},"from":{"x":393.625,"y":5071.528170800895,"angle":3.141592653589793,"id":"QpIgXuOPsv425759"},"to":{"id":"eACAGVRSVT581988","x":525.3874855041504,"y":5114.187379419525,"angle":0},"textBlock":[]},{"id":"BMHeTNpbRK992901","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":454.9395320062531,"y":5183.58311904087},{"x":466.772958075534,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":168},"lineStyle":{},"from":{"x":396.3250045776367,"y":5183.58311904087,"angle":3.141592653589793,"id":"xqXQKHMKKX924076"},"to":{"id":"eACAGVRSVT581988","x":525.3874855041504,"y":5114.187379419525,"angle":0},"textBlock":[]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"共享数据库"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"lMDdRqsTvd023534","type":"number","category":"default","value":""},{"name":"名称","id":"WUsNzlqMCD501704","type":"string","category":"default","value":""},{"name":"所有者","id":"MuYfsDktiv268032","type":"string","category":"default","value":""},{"name":"连接","id":"xQRgUCEEmd418823","type":"link","category":"default","value":""},{"name":"便笺","id":"ybEJGBVxzb792609","type":"string","category":"default","value":""}],"props":{"zindex":170,"w":100,"x":501.72499084472656,"h":40,"y":5135.58311904087,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"tPVVJKIWaO466640","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"id":"zCDyigGapw466923","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":441.4722125784732,"y":4999.128169275016},{"x":448.1277630074643,"y":4996.800003051758}],"locked":false,"dataAttributes":[],"props":{"zindex":171},"lineStyle":{"lineStyle":"dashed","lineWidth":0.5},"from":{"x":427.99998474121094,"y":4999.128169275016,"angle":3.141592653589793,"id":"jIIxgDltLj435847"},"to":{"id":"iNdMFzbSHw808726","x":461.59999084472656,"y":4996.800003051758,"angle":0},"textBlock":[]},{"id":"iNdMFzbSHw808726","name":"note","title":"备注","category":"basic","group":"","groupName":null,"locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[{"name":"序号","type":"number","value":"","category":"default","id":"ASHgxVzYaU764896"},{"name":"名称","type":"string","value":"","category":"default","id":"nHBcROOXBc873041"},{"name":"所有者","type":"string","value":"","category":"default","id":"tRMmeDnDHC193550"},{"name":"连接","type":"link","value":"","category":"default","id":"yizxLdRqCD687011"},{"name":"便笺","type":"string","value":"","category":"default","id":"UvYnCZJVnM851320"}],"props":{"x":459.72499084472656,"y":4946.800003051758,"w":100,"h":100,"zindex":172,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{"lineWidth":0},"fillStyle":{"color":"255, 247, 188"},"theme":{},"path":[{"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w-16","y":"0"},{"action":"line","x":"w","y":"16"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"line","x":"0","y":"0"},{"action":"close"}]},{"fillStyle":{"type":"solid","color":"228,208,137"},"actions":[{"action":"move","x":"w-16","y":"0"},{"action":"line","x":"w-16","y":"16"},{"action":"line","x":"w","y":"16"},{"action":"close"}]},{"fillStyle":{"type":"none"},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w-16","y":"0"},{"action":"line","x":"w","y":"16"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"line","x":"0","y":"0"},{"action":"close"}]}],"fontStyle":{},"textBlock":[{"position":{"x":10,"y":10,"w":"w-20","h":"h-20"},"text":"权限资源:X.Default"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"lYOtDdcrbc766767","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":377.79998779296875,"y":5027.718662263835},{"x":371.9249954223633,"y":5034.537676286198}],"locked":false,"dataAttributes":[],"props":{"zindex":173},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dashed","lineWidth":0.5},"from":{"x":377.79998779296875,"y":5013.128169275016,"angle":4.71238898038469,"id":"jIIxgDltLj435847"},"to":{"id":"QpIgXuOPsv425759","x":371.9249954223633,"y":5049.128169275016,"angle":1.570796326794897},"textBlock":[]},{"id":"smaWRIasqW196499","name":"image_search_ZSqDwUrfHD771753","title":"用户100x100","category":"search","group":"","groupName":"image_search_mMVREFQEhh084378","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":25.599990844726562,"y":5095.054001900486,"w":39.69999694824219,"h":38.26675503807928,"zindex":174,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5ee261f5e4b0b788a932a61e.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"fmFahZwHSH593157","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":106.8599914550781,"y":5114.187379419525},{"x":127.63999328613284,"y":5114.187379419525}],"locked":false,"dataAttributes":[],"props":{"zindex":175},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":65.29998779296875,"y":5114.187379419525,"angle":3.141592653589793,"id":"smaWRIasqW196499"},"to":{"id":"CePHcSVSCo502730","x":169.1999969482422,"y":5114.187379419525,"angle":0},"textBlock":[]},{"id":"mODSnMGGeB757792","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":287.7689852093323,"y":5114.187379419525},{"x":297.156010213031,"y":5183.58311904087}],"locked":false,"dataAttributes":[],"props":{"zindex":177},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":232,"y":5114.187379419525,"angle":3.1415926535897927,"id":"CePHcSVSCo502730"},"to":{"id":"xqXQKHMKKX924076","x":352.9249954223633,"y":5183.58311904087,"angle":0},"textBlock":[]},{"id":"KcxOXjNCIy728491","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":282.27437763346813,"y":5114.187379419525},{"x":299.9506132112584,"y":5071.528170800895}],"locked":false,"dataAttributes":[],"props":{"zindex":178},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow"},"from":{"x":232,"y":5114.187379419525,"angle":3.141592653589793,"id":"CePHcSVSCo502730"},"to":{"id":"QpIgXuOPsv425759","x":350.22499084472656,"y":5071.528170800895,"angle":0},"textBlock":[]},{"id":"JHAvTOUbpe342317","name":"image_search_BBogpawNXy669254","title":"缓存100x100","category":"search","group":"","groupName":"image_search_CeBSomMIyY657468","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":442.3249969482422,"y":5209.076864844703,"w":41.82501983642578,"h":41.012508392333984,"zindex":179,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5f86b7ffe4b004e8a0607237.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"UUcEybvLLm427282","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":437.3999938964844,"y":5208.062299310883},{"x":413.646783573569,"y":5229.58311904087}],"locked":false,"dataAttributes":[],"props":{"zindex":180},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dot","lineWidth":0.5},"from":{"x":374.625,"y":5205.983120566749,"angle":4.71238898038469,"id":"xqXQKHMKKX924076"},"to":{"id":"JHAvTOUbpe342317","x":442.3249969482422,"y":5229.58311904087,"angle":0},"textBlock":[]},{"id":"VRnUrGHFJz780381","name":"image_search_BBogpawNXy669254","title":"缓存100x100","category":"search","group":"","groupName":"image_search_CeBSomMIyY657468","locked":false,"link":"","children":[],"parent":"","resizeDir":["tl","tr","br","bl","l","t","r","b"],"attribute":{"container":false,"visible":true,"rotatable":true,"linkable":true,"collapsable":false,"collapsed":false,"fixedLink":false,"markerOffset":5},"dataAttributes":[],"props":{"x":269.1749801635742,"y":5013.128169275016,"w":41.82501983642578,"h":41.012508392333984,"zindex":181,"angle":0},"shapeStyle":{"alpha":1},"lineStyle":{},"fillStyle":{"type":"image","fileId":"https://iconsapi.com/5f86b7ffe4b004e8a0607237.svg","display":"stretch","imageW":100,"imageH":100},"theme":{},"path":[{"lineStyle":{"lineWidth":0},"actions":[{"action":"move","x":"0","y":"0"},{"action":"line","x":"w","y":"0"},{"action":"line","x":"w","y":"h"},{"action":"line","x":"0","y":"h"},{"action":"close"}]}],"fontStyle":{},"textBlock":[],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}]},{"id":"bBXRbKZGwg938100","name":"linker","text":"","group":"","linkerType":"curve","points":[{"x":371.9249954223633,"y":5023.982477870726},{"x":336.14569140429046,"y":5033.634423471183}],"locked":false,"dataAttributes":[],"props":{"zindex":182},"lineStyle":{"beginArrowStyle":"none","endArrowStyle":"solidArrow","lineStyle":"dot","lineWidth":0.5},"from":{"x":371.9249954223633,"y":5049.128169275016,"angle":1.570796326794897,"id":"QpIgXuOPsv425759"},"to":{"id":"VRnUrGHFJz780381","x":311,"y":5033.634423471183,"angle":3.1415926535897927},"textBlock":[]},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"应用缓存"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"LEYrYnvivO667850","type":"number","category":"default","value":""},{"name":"名称","id":"uSFWNXQvxd384604","type":"string","category":"default","value":""},{"name":"所有者","id":"VVJZwPIfdN075878","type":"string","category":"default","value":""},{"name":"连接","id":"twxnxuyySh642325","type":"link","category":"default","value":""},{"name":"便笺","id":"NxQGPZpzCB063093","type":"string","category":"default","value":""}],"props":{"zindex":183,"w":100,"x":418.72499084472656,"h":40,"y":5240.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"usGXsEHCFW910564","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""},{"parent":"","link":"","shapeStyle":{"alpha":1},"textBlock":[{"position":{"w":"w","x":0,"h":"h","y":0},"text":"应用缓存"}],"anchors":[{"x":"w/2","y":"0"},{"x":"w/2","y":"h"},{"x":"0","y":"h/2"},{"x":"w","y":"h/2"}],"title":"文本","fontStyle":{},"dataAttributes":[{"name":"序号","id":"QauTyThUMD847743","type":"number","category":"default","value":""},{"name":"名称","id":"AcqUULxbKQ145736","type":"string","category":"default","value":""},{"name":"所有者","id":"oNihaDINtA459856","type":"string","category":"default","value":""},{"name":"连接","id":"ZHgUTickPv254344","type":"link","category":"default","value":""},{"name":"便笺","id":"WanrbPkgnY191362","type":"string","category":"default","value":""}],"props":{"zindex":184,"w":100,"x":241.89998626708984,"h":40,"y":5038.724881708344,"angle":0},"path":[{"lineStyle":{"lineWidth":0},"fillStyle":{"type":"none"},"actions":[{"x":"0","action":"move","y":"0"},{"x":"w","action":"line","y":"0"},{"x":"w","action":"line","y":"h"},{"x":"0","action":"line","y":"h"},{"action":"close"}]}],"lineStyle":{},"children":[],"resizeDir":["tl","tr","br","bl","l","t","r","b"],"name":"text","fillStyle":{},"theme":{},"id":"gFzJCKoayw757105","attribute":{"container":false,"rotatable":true,"visible":true,"fixedLink":false,"collapsable":false,"collapsed":false,"linkable":true,"markerOffset":5},"category":"basic","locked":false,"group":""}],"client":"1686880026397eBdLGDoGCD803192"}">

请求/api/abp/application-configuration接口

基础服务

"auth": {    "Policies": {      "X.Default": true    }    "grantedPolicies": {     "X.Default": true    }  },

X服务

"auth": {    "Policies": {      "X.Default": true    }    "grantedPolicies": {    }  },
二.分析原因

1.X服务权限资源已加载,没有获取到x.Default的授权

2.基础服务权限资源已加载并且获取到x.Default的授权

3.共享库AbpPermissionGrants表中存在记录:ProviderKey:R ProviderName:RX Name: x.Default。 说明该角色已经授权了X.Default

4.重启X服务后再次请求获取到X.Default的授权

由上可推测X服务获取不到X.Default授权的原因大概是因为缓存。

怎么验证猜测,把日志等级调为Debug,再次请求查看日志

2023-06-15 11:14:53.087 +08:00 [DBG] PermissionStore.GetCacheItemAsync: pn:RX,pk:R,n:X.Default......2023-06-15 11:14:53.088 +08:00 [DBG] Found in the cache: pn:RX,pk:R,n:X.Default......

问题确定。

三.问题本质

要了解问题本质我们先来简单梳理一遍权限授权验证流程

不管是走中间件还是拦截器,验证授权最终都是调用了AbpAuthrizaionService.AuthorzieAsync()方法,结合日志,我们来看看PermissionStore.IsGrantedAsync()方法

public virtual async Task IsGrantedAsync(string name, string providerName, string providerKey)    {        return (await GetCacheItemAsync(name, providerName, providerKey)).IsGranted;    }    protected virtual async Task GetCacheItemAsync(        string name, // X.Default        string providerName,  // RX        string providerKey)   //R    {        var cacheKey = CalculateCacheKey(name, providerName, providerKey); //计算缓存key=pn:RX,pk:R,n:X.Default        Logger.LogDebug($"PermissionStore.GetCacheItemAsync: {cacheKey}");        var cacheItem = await Cache.GetAsync(cacheKey); //获取缓存        if (cacheItem != null)        {            Logger.LogDebug($"Found in the cache: {cacheKey}");            return cacheItem;   //存在则返回        }        Logger.LogDebug($"Not found in the cache: {cacheKey}");        cacheItem = new PermissionGrantCacheItem(false);        await SetCacheItemsAsync(providerName, providerKey, name, cacheItem); //不存在缓存则查数据库后将结果缓存        return cacheItem;    }
protected virtual async Task SetCacheItemsAsync(        string providerName,        string providerKey,        string currentName,        PermissionGrantCacheItem currentCacheItem)    {        var permissions = PermissionDefinitionManager.GetPermissions(); //获取该服务加载的权限资源        Logger.LogDebug($"Getting all granted permissions from the repository for this provider name,key: {providerName},{providerKey}");        var grantedPermissionsHashSet = new HashSet(            (await PermissionGrantRepository.GetListAsync(providerName, providerKey)).Select(p => p.Name)  //从数据库查找已授权的权限资源        );           Logger.LogDebug($"Setting the cache items. Count: {permissions.Count}");        var cacheItems = new List>(); //权限授权结果缓存集合        foreach (var permission in permissions)        {            var isGranted = grantedPermissionsHashSet.Contains(permission.Name); //存在授权列表中则已授权,否则未授权            cacheItems.Add(new KeyValuePair(   //把结果加进集合                CalculateCacheKey(permission.Name, providerName, providerKey),                new PermissionGrantCacheItem(isGranted))            );            if (permission.Name == currentName)            {                currentCacheItem.IsGranted = isGranted;            }        }        await Cache.SetManyAsync(cacheItems); //设置缓存        Logger.LogDebug($"Finished setting the cache items. Count: {permissions.Count}");    }

第一次请求X服务:load了一遍权限资源,并把X.Default标记为false缓存了起来,后面再授权角色RX 资源X.Default,因为缓存的存在再次获取还是未授权。重启服务后正常

而基础服务之所以能实时更新是因为权限管理模型就在这里, PermissionGrantCacheItemInvalidator 订阅了PermissionGrant变更的本地事件会清空缓存。

四.解决方案

一.授权验证都走基础服务

1.引用Volo.Abp.AspNetCore.Mvc.Client nutget包

2.添加AbpAspNetCoreMvcClientModule模块

3.添加配置

"RemoteServices": {    "AbpMvcClient": {      "BaseUrl": "http://localhost:XXXX", //配基础服务或网关    }  }

RemotePermissionChecker会取代PermissionChecker,请求远程服务进行权限验证,并将结果缓存起来,有效时间是300s(硬编码,todo:未来可配)

configuration = await Cache.GetOrAddAsync(            cacheKey,            async () => await ApplicationConfigurationAppService.GetAsync(),            () => new DistributedCacheEntryOptions            {                AbsoluteExpirationRelativeToNow = TimeSpan.FromSeconds(300) //TODO: Should be configurable.            }        );

更改后的授权验证流程

二 使用Redis缓存替换应用缓存

备注:key要一致

最后朋友采用了方案二解决了问题,理由是实时。如果你有更好的解决方案请在评论告知我感谢!!!!