Search in sources :

Example 6 with Authorization

use of org.osgi.service.useradmin.Authorization in project felix by apache.

the class UserAdminImplTest method testGroupMembershipWithAnonymousUserOk.

/**
 * Tests that testing for group membership with anonymous users works.
 */
public void testGroupMembershipWithAnonymousUserOk() {
    Role user = m_userAdmin.createRole("user", Role.USER);
    Group group = (Group) m_userAdmin.createRole("group", Role.GROUP);
    group.addMember(user);
    Authorization auth = m_userAdmin.getAuthorization(null);
    assertTrue(auth.hasRole(Role.USER_ANYONE));
    assertFalse(auth.hasRole("group"));
}
Also used : Role(org.osgi.service.useradmin.Role) Authorization(org.osgi.service.useradmin.Authorization) Group(org.osgi.service.useradmin.Group)

Example 7 with Authorization

use of org.osgi.service.useradmin.Authorization in project felix by apache.

the class UserAdminImplTest method testGroupMembershipWithUserAnyoneOk.

/**
 * Tests that testing for group membership with "user.anyone" works.
 */
public void testGroupMembershipWithUserAnyoneOk() {
    User user1 = (User) m_userAdmin.createRole("user1", Role.USER);
    User user2 = (User) m_userAdmin.createRole("user2", Role.USER);
    User user3 = (User) m_userAdmin.createRole("user3", Role.USER);
    User user4 = (User) m_userAdmin.createRole("user4", Role.USER);
    Group reqGroup = (Group) m_userAdmin.createRole("reqGroup", Role.GROUP);
    reqGroup.addMember(user1);
    reqGroup.addMember(user2);
    Group group = (Group) m_userAdmin.createRole("group", Role.GROUP);
    group.addRequiredMember(reqGroup);
    group.addMember(m_userAdmin.getRole(Role.USER_ANYONE));
    Authorization auth = m_userAdmin.getAuthorization(user1);
    assertTrue(auth.hasRole("group"));
    auth = m_userAdmin.getAuthorization(user2);
    assertTrue(auth.hasRole("group"));
    auth = m_userAdmin.getAuthorization(user3);
    assertFalse(auth.hasRole("group"));
    auth = m_userAdmin.getAuthorization(user4);
    assertFalse(auth.hasRole("group"));
}
Also used : Authorization(org.osgi.service.useradmin.Authorization) Group(org.osgi.service.useradmin.Group) User(org.osgi.service.useradmin.User)

Example 8 with Authorization

use of org.osgi.service.useradmin.Authorization in project felix by apache.

the class UserAdminImplTest method testGetAuthorizationForAnonymousUserOk.

/**
 * Tests that obtaining the authorization for a non-existing user yields null.
 */
public void testGetAuthorizationForAnonymousUserOk() {
    Authorization auth = m_userAdmin.getAuthorization(null);
    assertNotNull(auth);
    assertNull(auth.getRoles());
    assertNull(auth.getName());
}
Also used : Authorization(org.osgi.service.useradmin.Authorization)

Example 9 with Authorization

use of org.osgi.service.useradmin.Authorization in project felix by apache.

the class UserAdminImplTest method testUserAnyoneIsNotPartOfAuthorizedRolesOk.

/**
 * Tests that the list of roles in an {@link Authorization} does not contain the any-user, although it is defined as group member.
 */
public void testUserAnyoneIsNotPartOfAuthorizedRolesOk() {
    Role userAnyone = m_userAdmin.getRole(Role.USER_ANYONE);
    User user1 = (User) m_userAdmin.createRole("user1", Role.USER);
    Group group1 = (Group) m_userAdmin.createRole("group1", Role.GROUP);
    assertTrue(group1.addRequiredMember(user1));
    assertTrue(group1.addMember(userAnyone));
    Authorization auth = m_userAdmin.getAuthorization(user1);
    assertNotNull(auth);
    assertTrue(auth.hasRole("group1"));
    String[] roles = auth.getRoles();
    assertNotNull(roles);
    for (int i = 0; i < roles.length; i++) {
        assertFalse(Role.USER_ANYONE.equals(roles[i]));
    }
}
Also used : Role(org.osgi.service.useradmin.Role) Authorization(org.osgi.service.useradmin.Authorization) Group(org.osgi.service.useradmin.Group) User(org.osgi.service.useradmin.User)

Example 10 with Authorization

use of org.osgi.service.useradmin.Authorization in project aries by apache.

the class UserAdmin method getAuthorization.

/**
 * @see org.osgi.jmx.service.useradmin.UserAdminMBean#getAuthorization(java.lang.String)
 */
public CompositeData getAuthorization(String username) throws IOException {
    if (username == null) {
        throw new IOException("User name cannot be null");
    }
    Role role = userAdmin.getRole(username);
    if (role == null) {
        return null;
    }
    validateRoleType(role, Role.USER);
    Authorization auth = userAdmin.getAuthorization((User) role);
    if (auth == null) {
        return null;
    }
    return new AuthorizationData(auth).toCompositeData();
}
Also used : Role(org.osgi.service.useradmin.Role) Authorization(org.osgi.service.useradmin.Authorization) AuthorizationData(org.apache.aries.jmx.codec.AuthorizationData) IOException(java.io.IOException)

Aggregations

Authorization (org.osgi.service.useradmin.Authorization)11 User (org.osgi.service.useradmin.User)7 Group (org.osgi.service.useradmin.Group)5 Role (org.osgi.service.useradmin.Role)4 IOException (java.io.IOException)2 AuthorizationData (org.apache.aries.jmx.codec.AuthorizationData)2 Test (org.junit.Test)2 CompositeData (javax.management.openmbean.CompositeData)1