You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by sm...@apache.org on 2018/08/29 17:22:44 UTC

directory-fortress-enmasse git commit: FC-239 - implement ReviewMgl.findRoleConstraintsWKey

Repository: directory-fortress-enmasse
Updated Branches:
  refs/heads/master 8b3c27f76 -> e7ec54437


FC-239 - implement ReviewMgl.findRoleConstraintsWKey


Project: http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/repo
Commit: http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/commit/e7ec5443
Tree: http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/tree/e7ec5443
Diff: http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/diff/e7ec5443

Branch: refs/heads/master
Commit: e7ec54437ce6edc3d8b52a5bff463a94131073f2
Parents: 8b3c27f
Author: Shawn McKinney <sm...@apache.org>
Authored: Tue Aug 28 19:13:14 2018 -0500
Committer: Shawn McKinney <sm...@apache.org>
Committed: Tue Aug 28 19:13:14 2018 -0500

----------------------------------------------------------------------
 .../directory/fortress/rest/AdminMgrImpl.java   | 21 ++++++++++
 .../fortress/rest/FortressService.java          | 43 ++++++++++++++++++++
 .../fortress/rest/FortressServiceImpl.java      | 26 ++++++++++++
 .../directory/fortress/rest/ReviewMgrImpl.java  | 22 ++++++++++
 4 files changed, 112 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/e7ec5443/src/main/java/org/apache/directory/fortress/rest/AdminMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/rest/AdminMgrImpl.java b/src/main/java/org/apache/directory/fortress/rest/AdminMgrImpl.java
index 79662cc..6258795 100644
--- a/src/main/java/org/apache/directory/fortress/rest/AdminMgrImpl.java
+++ b/src/main/java/org/apache/directory/fortress/rest/AdminMgrImpl.java
@@ -1031,6 +1031,27 @@ class AdminMgrImpl extends AbstractMgrImpl
     }
 
 
+    /* No qualifier */ FortResponse removeRoleConstraintWid( FortRequest request )
+    {
+        FortResponse response = createResponse();
+
+        try
+        {
+            AdminMgr adminMgr = AdminMgrFactory.createInstance( request.getContextId() );
+            adminMgr.setAdmin( request.getSession() );
+            UserRole inRole = (UserRole) request.getEntity();
+            String szConstraintId = request.getValue();
+            adminMgr.removeRoleConstraint( inRole, szConstraintId );
+        }
+        catch ( SecurityException se )
+        {
+            createError( response, log, se );
+        }
+
+        return response;
+    }
+
+
     /* No qualifier */ FortResponse addPermissionAttributeToSet( FortRequest request )
     {
         FortResponse response = createResponse();

http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/e7ec5443/src/main/java/org/apache/directory/fortress/rest/FortressService.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/rest/FortressService.java b/src/main/java/org/apache/directory/fortress/rest/FortressService.java
index cbfc710..769d3f3 100644
--- a/src/main/java/org/apache/directory/fortress/rest/FortressService.java
+++ b/src/main/java/org/apache/directory/fortress/rest/FortressService.java
@@ -2783,6 +2783,41 @@ public interface FortressService
 
 
     /**
+     * This method returns the data set of all users who are assigned the given role constraint.  This searches the User data set for
+     * RoleConstraint relationship.  This method does NOT search for hierarchical RBAC Roles relationships.
+     * <h3></h3>
+     * <h4>required parameters</h4>
+     * <ul>
+     *  <li>
+     *    {@link FortRequest#entity} - contains a reference to {@link org.apache.directory.fortress.core.model.RoleConstraint} entity
+     *  </li>
+     * </ul>
+     * <ul style="list-style-type:none">
+     *   <li>
+     *     <ul style="list-style-type:none">
+     *       <li>
+     *         <h5>{@link org.apache.directory.fortress.core.model.RoleConstraint} required parameters</h5>
+     *         <ul>
+     *           <li>
+     *             {@link org.apache.directory.fortress.core.model.Role#name} - contains the name to use for the Role
+     *             {@link org.apache.directory.fortress.core.model.RoleConstraint#type} - contains the name to use for the RoleConstraint type
+     *             {@link org.apache.directory.fortress.core.model.RoleConstraint#key} - contains the name to use for the key
+     *             targeted for search.
+     *           </li>
+     *         </ul>
+     *       </li>
+     *     </ul>
+     *   </li>
+     * </ul>
+     *
+     * @param request contains a reference to {@code FortRequest}
+     * @return reference to {@code FortResponse}, {@link FortResponse#entities} contains a reference to a List of type
+     * {@link org.apache.directory.fortress.core.model.UserRole}
+     */
+    FortResponse assignedUsersConstraintsKey( FortRequest request );
+
+
+    /**
      * This function returns the set of roles assigned to a given user. The function is valid if and
      * only if the user is a member of the USERS data set.
      * <h3></h3>
@@ -6947,6 +6982,14 @@ public interface FortressService
     FortResponse removeRoleConstraint( FortRequest request );
 
     /**
+     * Thie method removes a roleConstraint (ftRC) from the user ldap entry.
+     *
+     * @param request contains a reference to {@code FortRequest}
+     * @return reference to {@code FortResponse}
+     */
+    FortResponse removeRoleConstraintWid( FortRequest request );
+
+    /**
      * This method will create a new permission attribute set object with resides under the
      * {@code ou=Constraints,ou=RBAC,dc=yourHostName,dc=com} container in directory information tree.
      * The attribute set may contain 0 to many {@link org.apache.directory.fortress.core.model.PermissionAttribute}

http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/e7ec5443/src/main/java/org/apache/directory/fortress/rest/FortressServiceImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/rest/FortressServiceImpl.java b/src/main/java/org/apache/directory/fortress/rest/FortressServiceImpl.java
index 04d7694..a54e172 100644
--- a/src/main/java/org/apache/directory/fortress/rest/FortressServiceImpl.java
+++ b/src/main/java/org/apache/directory/fortress/rest/FortressServiceImpl.java
@@ -603,6 +603,19 @@ public class FortressServiceImpl implements FortressService
      * {@inheritDoc}
      */
     @POST
+    @Path("/" + HttpIds.ROLE_DELETE_CONSTRAINT_ID + "/")
+    @RolesAllowed({SUPER_USER, ADMIN_MGR_USER})
+    @Override
+    public FortResponse removeRoleConstraintWid( FortRequest request )
+    {
+        return adminMgrImpl.removeRoleConstraintWid( request );
+    }
+
+
+    /**
+     * {@inheritDoc}
+     */
+    @POST
     @Path("/" + HttpIds.PERM_ADD_ATTRIBUTE_SET + "/")
     @RolesAllowed({SUPER_USER, ADMIN_MGR_USER})
     @Override
@@ -829,6 +842,19 @@ public class FortressServiceImpl implements FortressService
      * {@inheritDoc}
      */
     @POST
+    @Path("/" + HttpIds.USER_ASGNED_CONSTRAINTS_KEY + "/")
+    @RolesAllowed({SUPER_USER, REVIEW_MGR_USER})
+    @Override
+    public FortResponse assignedUsersConstraintsKey( FortRequest request )
+    {
+        return reviewMgrImpl.assignedUsersConstraintsKey( request );
+    }
+
+
+    /**
+     * {@inheritDoc}
+     */
+    @POST
     @Path("/" + HttpIds.ROLE_ASGNED + "/")
     @RolesAllowed({SUPER_USER, REVIEW_MGR_USER})
     @Override

http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/e7ec5443/src/main/java/org/apache/directory/fortress/rest/ReviewMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/apache/directory/fortress/rest/ReviewMgrImpl.java b/src/main/java/org/apache/directory/fortress/rest/ReviewMgrImpl.java
index a80e174..6f60fa4 100644
--- a/src/main/java/org/apache/directory/fortress/rest/ReviewMgrImpl.java
+++ b/src/main/java/org/apache/directory/fortress/rest/ReviewMgrImpl.java
@@ -349,6 +349,28 @@ class ReviewMgrImpl extends AbstractMgrImpl
     }
 
 
+    /* No qualifier */  FortResponse assignedUsersConstraintsKey( FortRequest request )
+    {
+        FortResponse response = createResponse();
+
+        try
+        {
+            ReviewMgr reviewMgr = ReviewMgrFactory.createInstance( request.getContextId() );
+            reviewMgr.setAdmin( request.getSession() );
+            Role inRole = (Role) request.getEntity();
+            RoleConstraint inConstraint = (RoleConstraint) request.getEntity2();
+            List<UserRole> uRoles = reviewMgr.assignedUsers( inRole, inConstraint.getType(), inConstraint.getKey() );
+            response.setEntities( uRoles );
+        }
+        catch ( SecurityException se )
+        {
+            createError( response, LOG, se );
+        }
+
+        return response;
+    }
+
+
     /* No qualifier */  FortResponse assignedRolesM( FortRequest request )
     {
         FortResponse response = createResponse();