2

从我读到的文档中,可以定义属性级别的权限(以及资源​​和实例级别)

属性级别 - 权限现在指定实例或资源的属性。用户可以编辑 IBM 客户记录上的地址。

如何使用<resource>:<action>:<instance>Shiro 中通常定义权限的格式以声明方式定义这些权限?如果可以做类似的事情似乎是合乎逻辑的,<resource>:<action>:<instance>:<attributename>但我在任何地方都找不到讨论这个的文档。

4

1 回答 1

0

你检查过 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;
}
于 2013-10-26T05:54:39.337 回答