Example usage for org.apache.shiro.authz.permission WildcardPermission WildcardPermission

List of usage examples for org.apache.shiro.authz.permission WildcardPermission WildcardPermission

Introduction

In this page you can find the example usage for org.apache.shiro.authz.permission WildcardPermission WildcardPermission.

Prototype

public WildcardPermission(String wildcardString) 

Source Link

Usage

From source file:annis.security.ANNISRolePermissionResolver.java

License:Apache License

@Override
public Collection<Permission> resolvePermissionsInRole(String roleString) {
    HashSet<Permission> perms = new HashSet<>();

    if ("*".equals(roleString)) {
        perms.add(new WildcardPermission("query:*:*"));
        perms.add(new WildcardPermission("meta:*"));
    } else {//from  w  w  w  .  ja v  a2 s  .  co  m
        if (Group.DEFAULT_USER_ROLE.equals(roleString)) {
            // every user can read/write its user configuration
            perms.add(new WildcardPermission("admin:*:userconfig"));
        } else if (Group.ANONYMOUS.equals(roleString)) {
            // every anonymous user can read its user configuration
            perms.add(new WildcardPermission("admin:read:userconfig"));
        }

        // add all corpora for this role
        Group group = confManager.getGroups().get(roleString);
        if (group != null) {
            for (String c : group.getCorpora()) {
                perms.add(new WildcardPermission("query:*:" + c));
                perms.add(new WildcardPermission("meta:" + c));
            }
        }
    }
    return perms;
}

From source file:com.ace.console.service.sys.impl.ResourceServiceImpl.java

License:Apache License

private boolean hasPermission(String permission, String actualResourceIdentity) {

    //?? ?a:b:create --->?a:b
    String permissionResourceIdentity = permission.substring(0, permission.lastIndexOf(":"));

    //???  ?? ?? a:b a:b??
    if (permissionResourceIdentity.startsWith(actualResourceIdentity)) {
        return true;
    }/*w  w w .j a v a2 s  .  c  o  m*/

    //??
    WildcardPermission p1 = new WildcardPermission(permissionResourceIdentity);
    WildcardPermission p2 = new WildcardPermission(actualResourceIdentity);

    return p1.implies(p2) || p2.implies(p1);
}

From source file:com.bennavetta.appsite.security.ObjectifyRealm.java

License:Apache License

@Override
protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {
    log.trace("Loading authorization info for {}", principals);
    Set<String> roles = new HashSet<>();
    Set<Permission> permissions = new HashSet<>();

    for (Object principal : principals.fromRealm(REALM_NAME)) // they're each strings
    {/*w ww  .  ja  va 2 s . com*/
        User user = ofy().load().type(User.class).id(principal.toString()).get();
        log.trace("Found user {}", user);
        roles.addAll(user.getRoles());
        for (String permStr : user.getPermissions()) {
            if (permStr.equals("all")) {
                permissions.add(new AllPermission());
            } else {
                permissions.add(new WildcardPermission(permStr));
            }
        }
    }

    SimpleAuthorizationInfo info = new SimpleAuthorizationInfo();
    info.setRoles(roles);
    info.setObjectPermissions(permissions);
    log.trace("Authorization info loaded: {}", info);
    return info;
}

From source file:com.freedomotic.persistence.RoleConverter.java

License:Open Source License

/**
 *
 * @param reader/*from ww  w  .  ja va2  s .  c o m*/
 * @param uc
 * @return
 */
@Override
public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext uc) {

    SimpleRole r = new SimpleRole();

    r.setName(reader.getAttribute("name"));
    reader.moveDown();
    while (reader.hasMoreChildren()) {
        reader.moveDown();
        r.add(new WildcardPermission(reader.getValue()));
        reader.moveUp();
    }
    reader.moveUp();

    return r;
}

From source file:com.freedomotic.plugins.devices.restapiv3.representations.RoleRepresentation.java

License:Open Source License

public SimpleRole asSimpleRole() {
    SimpleRole sr = new SimpleRole(name);
    for (String s : permissions) {
        sr.add(new WildcardPermission(s));
    }//from w w w .  j a  v a2  s  . co  m
    return sr;
}

From source file:com.freedomotic.plugins.devices.restapiv3.test.UserTest.java

License:Open Source License

@Override
void init() throws UriBuilderException, IllegalArgumentException {
    SimpleRole r = new SimpleRole();
    r.setName("admin");
    r.add(new WildcardPermission("*"));
    getApi().getAuth().addRole(r);//www. j  ava 2 s  . c o  m

    User u = new User("user", "password", "admin", getApi().getAuth());
    setItem(new UserRepresentation(u));

    initPath(UserResource.class);
    setListType(new GenericType<List<UserRepresentation>>() {
    });
    setSingleType(new GenericType<UserRepresentation>() {
    });
    testDELETE = false;
}

From source file:com.freedomotic.security.PluginRealm.java

License:Open Source License

public void addPlugin(String pluginName, String permissions) {
    SimpleAccount pluginUser = new SimpleAccount(pluginName, UUID.randomUUID().toString(), getName());
    pluginUser.addObjectPermission(new WildcardPermission(permissions));
    this.add(pluginUser);
}

From source file:com.freedomotic.security.RealmTest.java

License:Open Source License

@Before
public void prepare() {
    config.load();/*from ww w. ja  v a  2  s .  c  om*/
    auth.initBaseRealm();
    SimpleRole role = new SimpleRole();
    role.setName("administrators");
    role.add(new WildcardPermission("sys:*"));
    auth.addRole(role);
    auth.addUser("system", "password", "administrators");
    auth.getUser("system").setProperty("language", "auto");
}

From source file:com.freedomotic.security.RealmTest.java

License:Open Source License

@Test
public void TestRole() {
    assertEquals(1, auth.getRoles().size());
    assertEquals("administrators", auth.getRole("administrators").getName());
    Permission[] p = new Permission[] {};
    p = auth.getRole("administrators").getPermissions().toArray(p);
    assertEquals(true, p[0].implies(new WildcardPermission("sys:*")));
}

From source file:com.freedomotic.security.User.java

License:Open Source License

public boolean isPermitted(String perm) {
    for (Permission p : this.getObjectPermissions()) {
        if (p.implies(new WildcardPermission(perm))) {
            return true;
        }// ww w  .j a v a 2s. c  om
    }
    return false;
}