从我读到的文档中,可以定义属性级别的权限(以及资源和实例级别)
属性级别 - 权限现在指定实例或资源的属性。用户可以编辑 IBM 客户记录上的地址。
如何使用<resource>:<action>:<instance>
Shiro 中通常定义权限的格式以声明方式定义这些权限?如果可以做类似的事情似乎是合乎逻辑的,<resource>:<action>:<instance>:<attributename>
但我在任何地方都找不到讨论这个的文档。
你检查过 http://shiro.apache.org/permissions.html吗?
您可以根据自己的信息自己创建字符串。在我们的代码中,我们使用自定义领域以编程方式添加权限,如下所示:
public class OurAuthorizingReam extends AuthorizingRealm {
...
@Override
public AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {
... code to find permission infp
SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();
while (.. looping through permission info){
info.addStringPermission(... the permission string constructed);
}
return info;
}