Moqui权限设计

Moqui的权限是基于Apache Shiro的,构件类型基于screen,service,entity。对象有ArtifactGroup、ArtifactGroupMember、UserGroup、UserGroupMember、UserAccount、ArtifactAuthz。
授权是基于ArtifactGroup和UserGroup的,授权可以是整个系统、子系统、某个操作、某个页面(记录级的权限还在研究)如下:

<moqui.security.ArtifactAuthz artifactAuthzId="EXAMPLE_AUTHZ_VW" userGroupId="EXAMPLE_VIEWER"
artifactGroupId="EXAMPLE_APP" authzTypeEnumId="AUTHZT_ALLOW" authzActionEnumId="AUTHZA_VIEW"/>

配置一个例子中只有example的查看编辑权限的例子:
<!-- ========== Example to test only allow access to Example Find/Edit Screens ========== -->
<moqui.security.ArtifactGroup artifactGroupId="EXAMPLE_LTD" description="Example Find/Edit Screens Only"/>
<moqui.security.ArtifactGroupMember artifactGroupId="EXAMPLE_LTD" artifactTypeEnumId="AT_XML_SCREEN"
inheritAuthz="Y" artifactName="component://example/screen/ExampleApp/Example.xml"/>
<moqui.security.UserGroup userGroupId="EXAMPLE_LTD" description="Example Limited Group"/>
<moqui.security.UserAccount userId="EX_TLD" username="example.ltd" userFullName="Example Limited User"
currentPassword="16ac58bbfa332c1c55bd98b53e60720bfa90d394" passwordHashType="SHA"
passwordHint="framework name, lowercase" currencyUomId="USD" locale="en_US" timeZone="US/Central"/>
<moqui.security.UserGroupMember userGroupId="EXAMPLE_LTD" userId="EX_TLD" fromDate="1265184000000"/>
<moqui.security.ArtifactAuthz artifactAuthzId="EXAMPLE_AUTHZ_LTD" userGroupId="EXAMPLE_LTD"
artifactGroupId="EXAMPLE_LTD" authzTypeEnumId="AUTHZT_ALLOW" authzActionEnumId="AUTHZA_ALL"/>

配置条件拒绝访问
<!-- if more than 120 screens in 60 seconds, deny access for 60 seconds -->
<moqui.security.ArtifactTarpit userGroupId="ALL_USERS" artifactGroupId="ALL_SCREENS"
maxHitsCount="120" maxHitsDuration="60" tarpitDuration="60"/>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值