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 2014/11/11 21:38:45 UTC
[06/11] directory-fortress-enmasse git commit: change package
structure and names, pom improvements, license
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/AdminMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/AdminMgrImpl.java b/src/main/java/org/openldap/enmasse/AdminMgrImpl.java
deleted file mode 100644
index 055934b..0000000
--- a/src/main/java/org/openldap/enmasse/AdminMgrImpl.java
+++ /dev/null
@@ -1,986 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.enmasse;
-
-import org.openldap.fortress.AdminMgr;
-import org.openldap.fortress.AdminMgrFactory;
-import org.openldap.fortress.DelAdminMgr;
-import org.openldap.fortress.DelAdminMgrFactory;
-import org.openldap.fortress.ReviewMgr;
-import org.openldap.fortress.ReviewMgrFactory;
-import org.openldap.fortress.SecurityException;
-import org.openldap.fortress.rbac.AdminRole;
-import org.openldap.fortress.rbac.PermGrant;
-import org.openldap.fortress.rbac.PermObj;
-import org.openldap.fortress.rbac.Permission;
-import org.openldap.fortress.rbac.Role;
-import org.openldap.fortress.rbac.RoleRelationship;
-import org.openldap.fortress.rbac.SDSet;
-import org.openldap.fortress.rbac.User;
-import org.openldap.fortress.rbac.UserRole;
-import org.openldap.fortress.rest.FortRequest;
-import org.openldap.fortress.rest.FortResponse;
-import org.apache.log4j.Logger;
-
-/**
- * Utility for EnMasse Server. This class is thread safe.
- *
- * @author Shawn McKinney
- */
-class AdminMgrImpl
-{
- private static final String CLS_NM = AdminMgrImpl.class.getName();
- private static final Logger log = Logger.getLogger(CLS_NM);
-
- FortResponse addUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- User outUser = adminMgr.addUser(inUser);
- response.setEntity(outUser);
- response.setErrorCode(0);
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- adminMgr.deleteUser(inUser);
- response.setErrorCode(0);
- response.setEntity(inUser);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse disableUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- adminMgr.disableUser(inUser);
- response.setErrorCode(0);
- response.setEntity(inUser);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updateUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- User outUser = adminMgr.updateUser(inUser);
- response.setEntity(outUser);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse changePassword(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- adminMgr.changePassword(inUser, inUser.getNewPassword());
- ReviewMgr reviewMgr = ReviewMgrFactory.createInstance(request.getContextId());
- User outUser = reviewMgr.readUser(inUser);
- response.setEntity(outUser);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse lockUserAccount(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- adminMgr.lockUserAccount(inUser);
- ReviewMgr reviewMgr = ReviewMgrFactory.createInstance(request.getContextId());
- User outUser = reviewMgr.readUser(inUser);
- response.setEntity(outUser);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse unlockUserAccount(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- adminMgr.unlockUserAccount(inUser);
- ReviewMgr reviewMgr = ReviewMgrFactory.createInstance(request.getContextId());
- User outUser = reviewMgr.readUser(inUser);
- response.setEntity(outUser);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse resetPassword(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User inUser = (User) request.getEntity();
- adminMgr.resetPassword(inUser, inUser.getNewPassword());
- ReviewMgr reviewMgr = ReviewMgrFactory.createInstance(request.getContextId());
- User outUser = reviewMgr.readUser(inUser);
- response.setEntity(outUser);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Role inRole = (Role) request.getEntity();
- Role outRole = adminMgr.addRole(inRole);
- response.setEntity(outRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Role inRole = (Role) request.getEntity();
- adminMgr.deleteRole(inRole);
- response.setEntity(inRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updateRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Role inRole = (Role) request.getEntity();
- Role outRole = adminMgr.updateRole(inRole);
- response.setEntity(outRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse assignUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- UserRole inRole = (UserRole) request.getEntity();
- adminMgr.assignUser(inRole);
- response.setEntity(inRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deassignUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- UserRole inRole = (UserRole) request.getEntity();
- adminMgr.deassignUser(inRole);
- response.setEntity(inRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addPermission(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Permission inPerm = (Permission) request.getEntity();
- Permission outPerm = adminMgr.addPermission(inPerm);
- response.setEntity(outPerm);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updatePermission(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Permission inPerm = (Permission) request.getEntity();
- Permission outPerm = adminMgr.updatePermission(inPerm);
- response.setEntity(outPerm);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deletePermission(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Permission inPerm = (Permission) request.getEntity();
- adminMgr.deletePermission(inPerm);
- response.setEntity(inPerm);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addPermObj(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- PermObj inObj = (PermObj) request.getEntity();
- PermObj outObj = adminMgr.addPermObj(inObj);
- response.setEntity(outObj);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updatePermObj(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- PermObj inObj = (PermObj) request.getEntity();
- PermObj outObj = adminMgr.updatePermObj(inObj);
- response.setEntity(outObj);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deletePermObj(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- PermObj inObj = (PermObj) request.getEntity();
- adminMgr.deletePermObj(inObj);
- response.setEntity(inObj);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- private void grantPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Role role = new Role(permGrant.getRoleNm());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(false);
- adminMgr.grantPermission(perm, role);
- }
-
- private void grantAdminPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- AdminRole role = new AdminRole(permGrant.getRoleNm());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(true);
- delegatedAdminMgr.grantPermission(perm, role);
- }
-
- private void revokePerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- Role role = new Role(permGrant.getRoleNm());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(false);
- adminMgr.revokePermission(perm, role);
- }
-
- private void revokeAdminPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- AdminRole role = new AdminRole(permGrant.getRoleNm());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(true);
- delegatedAdminMgr.revokePermission(perm, role);
- }
-
- private void grantUserPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User user = new User(permGrant.getUserId());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(false);
- adminMgr.grantPermission(perm, user);
- }
-
- private void grantAdminUserPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- User user = new User(permGrant.getUserId());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(true);
- delegatedAdminMgr.grantPermission(perm, user);
- }
-
- private void revokeUserPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- User user = new User(permGrant.getUserId());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(false);
- adminMgr.revokePermission(perm, user);
- }
-
- private void revokeAdminUserPerm(FortRequest request) throws SecurityException
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- User user = new User(permGrant.getUserId());
- Permission perm = new Permission(permGrant.getObjName(), permGrant.getOpName(), permGrant.getObjId());
- perm.setAdmin(true);
- delegatedAdminMgr.revokePermission(perm, user);
- }
-
- FortResponse grant(FortRequest request, FortressServiceImpl fortressService)
- {
- FortResponse response = new FortResponse();
- try
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- if (permGrant.isAdmin())
- {
- grantAdminPerm(request);
- }
- else
- {
- grantPerm(request);
- }
- response.setEntity(permGrant);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse revoke(FortRequest request, FortressServiceImpl fortressService)
- {
- FortResponse response = new FortResponse();
- try
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- if (permGrant.isAdmin())
- {
- revokeAdminPerm(request);
- }
- else
- {
- revokePerm(request);
- }
- response.setEntity(permGrant);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse grantUser(FortRequest request, FortressServiceImpl fortressService)
- {
- FortResponse response = new FortResponse();
- try
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- if (permGrant.isAdmin())
- {
- grantAdminUserPerm(request);
- }
- else
- {
- grantUserPerm(request);
- }
- response.setEntity(permGrant);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse revokeUser(FortRequest request, FortressServiceImpl fortressService)
- {
- FortResponse response = new FortResponse();
- try
- {
- PermGrant permGrant = (PermGrant) request.getEntity();
- if (permGrant.isAdmin())
- {
- revokeAdminUserPerm(request);
- }
- else
- {
- revokeUserPerm(request);
- }
- response.setEntity(permGrant);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addDescendant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- RoleRelationship relationship = (RoleRelationship) request.getEntity();
- adminMgr.addDescendant(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
-
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addAscendant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- RoleRelationship relationship = (RoleRelationship) request.getEntity();
- adminMgr.addAscendant(relationship.getChild(), relationship.getParent());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addInheritance(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- RoleRelationship relationship = (RoleRelationship) request.getEntity();
- adminMgr.addInheritance(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteInheritance(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- RoleRelationship relationship = (RoleRelationship) request.getEntity();
- adminMgr.deleteInheritance(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse createSsdSet(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.createSsdSet(inSet);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updateSsdSet(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.updateSsdSet(inSet);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addSsdRoleMember(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- Role role = new Role(request.getValue());
- SDSet outSet = adminMgr.addSsdRoleMember(inSet, role);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteSsdRoleMember(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- Role role = new Role(request.getValue());
- SDSet outSet = adminMgr.deleteSsdRoleMember(inSet, role);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteSsdSet(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.deleteSsdSet(inSet);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse setSsdSetCardinality(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.setSsdSetCardinality(inSet, inSet.getCardinality());
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse createDsdSet(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.createDsdSet(inSet);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updateDsdSet(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.updateDsdSet(inSet);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addDsdRoleMember(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- Role role = new Role(request.getValue());
- SDSet outSet = adminMgr.addDsdRoleMember(inSet, role);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteDsdRoleMember(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- Role role = new Role(request.getValue());
- SDSet outSet = adminMgr.deleteDsdRoleMember(inSet, role);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteDsdSet(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.deleteDsdSet(inSet);
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse setDsdSetCardinality(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminMgr adminMgr = AdminMgrFactory.createInstance(request.getContextId());
- adminMgr.setAdmin(request.getSession());
- SDSet inSet = (SDSet) request.getEntity();
- SDSet outSet = adminMgr.setDsdSetCardinality(inSet, inSet.getCardinality());
- response.setEntity(outSet);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/AuditMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/AuditMgrImpl.java b/src/main/java/org/openldap/enmasse/AuditMgrImpl.java
deleted file mode 100644
index d653eb6..0000000
--- a/src/main/java/org/openldap/enmasse/AuditMgrImpl.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.enmasse;
-
-import org.openldap.fortress.AuditMgr;
-import org.openldap.fortress.AuditMgrFactory;
-import org.openldap.fortress.SecurityException;
-import org.openldap.fortress.rbac.AuthZ;
-import org.openldap.fortress.rbac.Bind;
-import org.openldap.fortress.rbac.Mod;
-import org.openldap.fortress.rbac.UserAudit;
-import org.openldap.fortress.rest.FortRequest;
-import org.openldap.fortress.rest.FortResponse;
-import org.apache.log4j.Logger;
-
-import java.util.List;
-
-/**
- * Utility for EnMasse Server. This class is thread safe.
- *
- * @author Shawn McKinney
- */
-class AuditMgrImpl
-{
- private static final String CLS_NM = AuditMgrImpl.class.getName();
- private static final Logger log = Logger.getLogger(CLS_NM);
-
- /**
- * ************************************************************************************************************************************
- * BEGIN AUDIT
- * **************************************************************************************************************************************
- */
-
- FortResponse searchBinds(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAudit inAudit = (UserAudit) request.getEntity();
- AuditMgr auditMgr = AuditMgrFactory.createInstance(request.getContextId());
- auditMgr.setAdmin(request.getSession());
- List<Bind> outAudit = auditMgr.searchBinds(inAudit);
- response.setEntities(outAudit);
- response.setErrorCode(0);
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse getUserAuthZs(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAudit inAudit = (UserAudit)request.getEntity();
- AuditMgr auditMgr = AuditMgrFactory.createInstance(request.getContextId());
- auditMgr.setAdmin(request.getSession());
- List<AuthZ> outAudit = auditMgr.getUserAuthZs(inAudit);
- response.setEntities(outAudit);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse searchAuthZs(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAudit inAudit = (UserAudit)request.getEntity();
- AuditMgr auditMgr = AuditMgrFactory.createInstance(request.getContextId());
- auditMgr.setAdmin(request.getSession());
- List<AuthZ> outAudit = auditMgr.searchAuthZs(inAudit);
- response.setEntities(outAudit);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse searchUserSessions(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAudit inAudit = (UserAudit)request.getEntity();
- AuditMgr auditMgr = AuditMgrFactory.createInstance(request.getContextId());
- auditMgr.setAdmin(request.getSession());
- List<Mod> outAudit = auditMgr.searchUserSessions(inAudit);
- response.setEntities(outAudit);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse searchAdminMods(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAudit inAudit = (UserAudit)request.getEntity();
- AuditMgr auditMgr = AuditMgrFactory.createInstance(request.getContextId());
- auditMgr.setAdmin(request.getSession());
- List<Mod> outAudit = auditMgr.searchAdminMods(inAudit);
- response.setEntities(outAudit);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse searchInvalidUsers(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAudit inAudit = (UserAudit)request.getEntity();
- AuditMgr auditMgr = AuditMgrFactory.createInstance(request.getContextId());
- auditMgr.setAdmin(request.getSession());
- List<AuthZ> outAudit = auditMgr.searchInvalidUsers(inAudit);
- response.setEntities(outAudit);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/ConfigMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/ConfigMgrImpl.java b/src/main/java/org/openldap/enmasse/ConfigMgrImpl.java
deleted file mode 100644
index ffb2c8d..0000000
--- a/src/main/java/org/openldap/enmasse/ConfigMgrImpl.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.enmasse;
-
-import org.openldap.fortress.cfg.ConfigMgr;
-import org.openldap.fortress.cfg.ConfigMgrFactory;
-import org.openldap.fortress.rbac.Props;
-import org.openldap.fortress.rest.FortRequest;
-import org.openldap.fortress.rest.FortResponse;
-import org.openldap.fortress.rest.RestUtils;
-import org.apache.log4j.Logger;
-
-import java.util.Properties;
-
-/**
- * Utility for EnMasse Server. This class is thread safe.
- *
- * @author Shawn McKinney
- */
-class ConfigMgrImpl
-{
- private static final String CLS_NM = ConfigMgrImpl.class.getName();
- private static final Logger log = Logger.getLogger(CLS_NM);
-
- /**
- *
- * @param request
- * @return
- */
- FortResponse addConfig(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- ConfigMgr configMgr = ConfigMgrFactory.createInstance();
- Properties inProperties = RestUtils.getProperties((Props)request.getEntity());
- Properties outProperties = configMgr.add(request.getValue(), inProperties);
- Props retProps = RestUtils.getProps(outProperties);
- if (retProps != null)
- {
- response.setEntity(retProps);
- response.setErrorCode(0);
- }
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- /**
- *
- * @param request
- * @return
- */
- FortResponse updateConfig(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- ConfigMgr configMgr = ConfigMgrFactory.createInstance();
- Properties inProperties = RestUtils.getProperties((Props)request.getEntity());
- Properties outProperties = configMgr.update(request.getValue(), inProperties);
- Props retProps = RestUtils.getProps(outProperties);
- if (retProps != null)
- {
- response.setEntity(retProps);
- response.setErrorCode(0);
- }
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- /**
- *
- * @param request
- * @return
- */
- FortResponse deleteConfig(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- ConfigMgr configMgr = ConfigMgrFactory.createInstance();
- if(request.getEntity() == null)
- {
- configMgr.delete(request.getValue());
- }
- else
- {
- Properties inProperties = RestUtils.getProperties((Props)request.getEntity());
- configMgr.delete(request.getValue(), inProperties);
-
- }
- response.setErrorCode(0);
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- /**
- *
- * @param request
- * @return
- */
- FortResponse readConfig(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- ConfigMgr configMgr = ConfigMgrFactory.createInstance();
- Properties properties = configMgr.read(request.getValue());
- Props props = RestUtils.getProps(properties);
- if (properties != null)
- {
- response.setEntity(props);
- response.setErrorCode(0);
- }
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/DelegatedAccessMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/DelegatedAccessMgrImpl.java b/src/main/java/org/openldap/enmasse/DelegatedAccessMgrImpl.java
deleted file mode 100644
index ac8ccc4..0000000
--- a/src/main/java/org/openldap/enmasse/DelegatedAccessMgrImpl.java
+++ /dev/null
@@ -1,264 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.enmasse;
-
-import org.openldap.fortress.DelAccessMgr;
-import org.openldap.fortress.DelAccessMgrFactory;
-import org.openldap.fortress.SecurityException;
-import org.openldap.fortress.rbac.RolePerm;
-import org.openldap.fortress.rbac.UserAdminRole;
-import org.openldap.fortress.rbac.Permission;
-import org.openldap.fortress.rbac.Role;
-import org.openldap.fortress.rbac.Session;
-import org.openldap.fortress.rbac.User;
-import org.openldap.fortress.rbac.UserRole;
-import org.openldap.fortress.rest.FortRequest;
-import org.openldap.fortress.rest.FortResponse;
-import org.apache.log4j.Logger;
-
-import java.util.List;
-import java.util.Set;
-
-/**
- * Utility for EnMasse Server. This class is thread safe.
- *
- * @author Shawn McKinney
- */
-class DelegatedAccessMgrImpl
-{
- private static final String CLS_NM = DelegatedAccessMgrImpl.class.getName();
- private static final Logger log = Logger.getLogger(CLS_NM);
-
- /**
- * ************************************************************************************************************************************
- * BEGIN DELEGATEDACCESSMGR
- * **************************************************************************************************************************************
- */
-
- FortResponse canAssign(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserRole uRole = (UserRole) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- boolean result = accessMgr.canAssign(session, new User(uRole.getUserId()), new Role(uRole.getName()));
- response.setSession(session);
- response.setAuthorized(result);
- response.setErrorCode(0);
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse canDeassign(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserRole uRole = (UserRole) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- boolean result = accessMgr.canDeassign(session, new User(uRole.getUserId()), new Role(uRole.getName()));
- response.setSession(session);
- response.setAuthorized(result);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse canGrant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- RolePerm context = (RolePerm) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- boolean result = accessMgr.canGrant(session, new Role(context.getRole().getName()), context.getPerm());
- response.setSession(session);
- response.setAuthorized(result);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse canRevoke(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- RolePerm context = (RolePerm) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- boolean result = accessMgr.canRevoke(session, new Role(context.getRole().getName()), context.getPerm());
- response.setSession(session);
- response.setAuthorized(result);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- public FortResponse checkAdminAccess(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- Permission perm = (Permission) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- perm.setAdmin(true);
- boolean result = accessMgr.checkAccess(session, perm);
- response.setSession(session);
- response.setAuthorized(result);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addActiveAdminRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAdminRole uAdminRole = (UserAdminRole) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- accessMgr.addActiveRole(session, uAdminRole);
- response.setSession(session);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse dropActiveAdminRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAdminRole uAdminRole = (UserAdminRole) request.getEntity();
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- accessMgr.dropActiveRole(session, uAdminRole);
- response.setSession(session);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse sessionAdminRoles(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- Session session = request.getSession();
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- List<UserAdminRole> roles = accessMgr.sessionAdminRoles(session);
- response.setEntities(roles);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse sessionAdminPermissions(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- Session session = request.getSession();
- List<Permission> perms = accessMgr.sessionPermissions(session);
- response.setSession(session);
- response.setEntities(perms);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse authorizedSessionRoles(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- DelAccessMgr accessMgr = DelAccessMgrFactory.createInstance(request.getContextId());
- Session session = request.getSession();
- Set<String> roles = accessMgr.authorizedAdminRoles(session);
- response.setValueSet(roles);
- response.setSession(session);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/DelegatedAdminMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/DelegatedAdminMgrImpl.java b/src/main/java/org/openldap/enmasse/DelegatedAdminMgrImpl.java
deleted file mode 100644
index 0d46af7..0000000
--- a/src/main/java/org/openldap/enmasse/DelegatedAdminMgrImpl.java
+++ /dev/null
@@ -1,381 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.enmasse;
-
-import org.openldap.fortress.DelAdminMgr;
-import org.openldap.fortress.DelAdminMgrFactory;
-import org.openldap.fortress.SecurityException;
-import org.openldap.fortress.rbac.AdminRole;
-import org.openldap.fortress.rbac.AdminRoleRelationship;
-import org.openldap.fortress.rbac.OrgUnit;
-import org.openldap.fortress.rbac.OrgUnitRelationship;
-import org.openldap.fortress.rbac.UserAdminRole;
-import org.openldap.fortress.rest.FortRequest;
-import org.openldap.fortress.rest.FortResponse;
-import org.apache.log4j.Logger;
-
-
-/**
- * Utility for EnMasse Server. This class is thread safe.
- *
- * @author Shawn McKinney
- */
-class DelegatedAdminMgrImpl
-{
- private static final String CLS_NM = DelegatedAdminMgrImpl.class.getName();
- private static final Logger log = Logger.getLogger(CLS_NM);
-
- /**
- * ************************************************************************************************************************************
- * BEGIN DELEGATEDADMINMGR
- * **************************************************************************************************************************************
- */
-
- FortResponse addAdminRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRole inRole = (AdminRole) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- AdminRole retRole = delegatedAdminMgr.addRole(inRole);
- response.setEntity(retRole);
- response.setErrorCode(0);
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se + " warnId=" + se.getErrorId());
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteAdminRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRole inRole = (AdminRole) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.deleteRole(inRole);
- response.setEntity(inRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updateAdminRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRole inRole = (AdminRole) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- AdminRole retRole = delegatedAdminMgr.updateRole(inRole);
- response.setEntity(retRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se + " errorId=" + se.getErrorId());
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse assignAdminUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAdminRole inRole = (UserAdminRole) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.assignUser(inRole);
- response.setEntity(inRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deassignAdminUser(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- UserAdminRole inRole = (UserAdminRole) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.deassignUser(inRole);
- response.setEntity(inRole);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addAdminDescendant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRoleRelationship relationship = (AdminRoleRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.addDescendant(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addAdminAscendant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRoleRelationship relationship = (AdminRoleRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.addAscendant(relationship.getChild(), relationship.getParent());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addAdminInheritance(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRoleRelationship relationship = (AdminRoleRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.addInheritance(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteAdminInheritance(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRoleRelationship relationship = (AdminRoleRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.deleteInheritance(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addOrg(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnit inOrg = (OrgUnit) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- OrgUnit retOrg = delegatedAdminMgr.add(inOrg);
- response.setEntity(retOrg);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse updateOrg(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnit inOrg = (OrgUnit) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- OrgUnit retOrg = delegatedAdminMgr.update(inOrg);
- response.setEntity(retOrg);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteOrg(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnit inOrg = (OrgUnit) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- OrgUnit retOrg = delegatedAdminMgr.delete(inOrg);
- response.setEntity(retOrg);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addOrgDescendant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnitRelationship relationship = (OrgUnitRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.addDescendant(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addOrgAscendant(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnitRelationship relationship = (OrgUnitRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.addAscendant(relationship.getChild(), relationship.getParent());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse addOrgInheritance(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnitRelationship relationship = (OrgUnitRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.addInheritance(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse deleteOrgInheritance(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnitRelationship relationship = (OrgUnitRelationship) request.getEntity();
- DelAdminMgr delegatedAdminMgr = DelAdminMgrFactory.createInstance(request.getContextId());
- delegatedAdminMgr.setAdmin(request.getSession());
- delegatedAdminMgr.deleteInheritance(relationship.getParent(), relationship.getChild());
- response.setEntity(relationship);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/DelegatedReviewMgrImpl.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/DelegatedReviewMgrImpl.java b/src/main/java/org/openldap/enmasse/DelegatedReviewMgrImpl.java
deleted file mode 100644
index e6c8d71..0000000
--- a/src/main/java/org/openldap/enmasse/DelegatedReviewMgrImpl.java
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * This work is part of OpenLDAP Software <http://www.openldap.org/>.
- *
- * Copyright 1998-2014 The OpenLDAP Foundation.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted only as authorized by the OpenLDAP
- * Public License.
- *
- * A copy of this license is available in the file LICENSE in the
- * top-level directory of the distribution or, alternatively, at
- * <http://www.OpenLDAP.org/license.html>.
- */
-package org.openldap.enmasse;
-
-import org.openldap.fortress.DelReviewMgr;
-import org.openldap.fortress.DelReviewMgrFactory;
-import org.openldap.fortress.SecurityException;
-import org.openldap.fortress.rbac.AdminRole;
-import org.openldap.fortress.rbac.OrgUnit;
-import org.openldap.fortress.rbac.UserAdminRole;
-import org.openldap.fortress.rbac.User;
-import org.openldap.fortress.rest.FortRequest;
-import org.openldap.fortress.rest.FortResponse;
-import org.apache.log4j.Logger;
-
-import java.util.List;
-
-/**
- * Utility for EnMasse Server. This class is thread safe.
- *
- * @author Shawn McKinney
- */
-class DelegatedReviewMgrImpl
-{
- private static final String CLS_NM = DelegatedReviewMgrImpl.class.getName();
- private static final Logger log = Logger.getLogger(CLS_NM);
-
- /**
- * ************************************************************************************************************************************
- * BEGIN DELEGATEDREVIEWMGR
- * **************************************************************************************************************************************
- */
-
- FortResponse readAdminRole(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRole inRole = (AdminRole) request.getEntity();
- DelReviewMgr delegatedReviewMgr = DelReviewMgrFactory.createInstance(request.getContextId());
- AdminRole outRole = delegatedReviewMgr.readRole(inRole);
- response.setEntity(outRole);
- response.setErrorCode(0);
- }
- catch (org.openldap.fortress.SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse findAdminRoles(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- String searchVal = request.getValue();
- DelReviewMgr delegatedReviewMgr = DelReviewMgrFactory.createInstance(request.getContextId());
- delegatedReviewMgr.setAdmin(request.getSession());
- List<AdminRole> outRoles = delegatedReviewMgr.findRoles(searchVal);
- response.setEntities(outRoles);
- response.setErrorCode(0);
-
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse assignedAdminRoles(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- User inUser = (User)request.getEntity();
- DelReviewMgr delegatedReviewMgr = DelReviewMgrFactory.createInstance(request.getContextId());
- delegatedReviewMgr.setAdmin(request.getSession());
- List<UserAdminRole> uRoles = delegatedReviewMgr.assignedRoles(inUser);
- response.setEntities(uRoles);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse assignedAdminUsers(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- AdminRole inRole = (AdminRole) request.getEntity();
- DelReviewMgr delegatedReviewMgr = DelReviewMgrFactory.createInstance(request.getContextId());
- delegatedReviewMgr.setAdmin(request.getSession());
- List<User> users = delegatedReviewMgr.assignedUsers(inRole);
- response.setEntities(users);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse readOrg(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnit inOrg = (OrgUnit) request.getEntity();
- DelReviewMgr delegatedReviewMgr = DelReviewMgrFactory.createInstance(request.getContextId());
- delegatedReviewMgr.setAdmin(request.getSession());
- OrgUnit returnOrg = delegatedReviewMgr.read(inOrg);
- response.setEntity(returnOrg);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-
- FortResponse searchOrg(FortRequest request)
- {
- FortResponse response = new FortResponse();
- try
- {
- OrgUnit inOrg = (OrgUnit) request.getEntity();
- DelReviewMgr delegatedReviewMgr = DelReviewMgrFactory.createInstance(request.getContextId());
- delegatedReviewMgr.setAdmin(request.getSession());
- List<OrgUnit> orgs = delegatedReviewMgr.search(inOrg.getType(), inOrg.getName());
- response.setEntities(orgs);
- response.setErrorCode(0);
- }
- catch (SecurityException se)
- {
- log.info(CLS_NM + " caught " + se);
- response.setErrorCode(se.getErrorId());
- response.setErrorMessage(se.getMessage());
- }
- return response;
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-fortress-enmasse/blob/99852b55/src/main/java/org/openldap/enmasse/FortressInterceptor.java
----------------------------------------------------------------------
diff --git a/src/main/java/org/openldap/enmasse/FortressInterceptor.java b/src/main/java/org/openldap/enmasse/FortressInterceptor.java
deleted file mode 100644
index f5bcc51..0000000
--- a/src/main/java/org/openldap/enmasse/FortressInterceptor.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*
- * Copyright (c) 2011-2014, JoshuaTree. All Rights Reserved.
- */
-package org.openldap.enmasse;
-
-import java.lang.annotation.Annotation;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.Map;
-import java.util.Set;
-
-import org.apache.cxf.common.classloader.ClassLoaderUtils;
-import org.apache.cxf.common.util.ClassHelper;
-import org.apache.cxf.interceptor.security.SimpleAuthorizingInterceptor;
-
-
-/**
- * Security Utility for EnMasse Server.
- *
- * @author Shawn McKinney
- */
-public class FortressInterceptor extends SimpleAuthorizingInterceptor
-{
- private static final String CLS_NM = FortressInterceptor.class.getName();
- private static final org.apache.log4j.Logger log = org.apache.log4j.Logger.getLogger(CLS_NM);
-
- private static final String DEFAULT_ANNOTATION_CLASS_NAME = "javax.annotation.security.RolesAllowed";
- private static final Set<String> SKIP_METHODS;
-
- static
- {
- SKIP_METHODS = new HashSet<String>();
- SKIP_METHODS.addAll(Arrays.asList(
- new String[]{"wait", "notify", "notifyAll",
- "equals", "toString", "hashCode"}));
- }
-
- private String annotationClassName = DEFAULT_ANNOTATION_CLASS_NAME;
-
- /**
- *
- * @param name
- */
- public void setAnnotationClassName(String name)
- {
- try
- {
- log.info(CLS_NM + ".setAnnotationClassName:" + name);
- ClassLoaderUtils.loadClass(name, FortressInterceptor.class);
- annotationClassName = name;
- }
- catch (ClassNotFoundException ex)
- {
- String warning = CLS_NM + ".setAnnotationClassName caught ClassNotFoundException-" + ex;
- log.info((warning));
- }
- }
-
- /**
- *
- * @param object
- */
- public void setSecuredObject(Object object)
- {
- log.info(CLS_NM + ".setSecuredObject:" + object);
- Class<?> cls = ClassHelper.getRealClass(object);
- Map<String, String> rolesMap = new HashMap<String, String>();
- findRoles(cls, rolesMap);
- if (rolesMap.isEmpty())
- {
- log.info(CLS_NM + ".setSecuredObject The roles map is empty, the service object is not protected");
- }
- else if (log.isDebugEnabled())
- {
- for (Map.Entry<String, String> entry : rolesMap.entrySet())
- {
- log.debug(CLS_NM + ".setSecuredObject Method: " + entry.getKey() + ", roles: " + entry.getValue());
- }
- }
- super.setMethodRolesMap(rolesMap);
- }
-
- /**
- *
- * @param cls
- * @param rolesMap
- */
- protected void findRoles(Class<?> cls, Map<String, String> rolesMap)
- {
- log.info(CLS_NM + ".findRoles:" + rolesMap);
- if (cls == null || cls == Object.class)
- {
- return;
- }
- String classRolesAllowed = getRoles(cls.getAnnotations(), annotationClassName);
- for (Method m : cls.getMethods())
- {
- if (SKIP_METHODS.contains(m.getName()))
- {
- continue;
- }
- String methodRolesAllowed = getRoles(m.getAnnotations(), annotationClassName);
- String theRoles = methodRolesAllowed != null ? methodRolesAllowed : classRolesAllowed;
- if (theRoles != null)
- {
- rolesMap.put(m.getName(), theRoles);
- }
- }
- if (!rolesMap.isEmpty())
- {
- return;
- }
-
- findRoles(cls.getSuperclass(), rolesMap);
-
- if (!rolesMap.isEmpty())
- {
- return;
- }
-
- for (Class<?> interfaceCls : cls.getInterfaces())
- {
- findRoles(interfaceCls, rolesMap);
- }
- }
-
- /**
- *
- * @param anns
- * @param annName
- * @return String roles
- */
- private String getRoles(Annotation[] anns, String annName)
- {
- log.debug(CLS_NM + ".getRoles:" + annName);
- for (Annotation ann : anns)
- {
- if (ann.annotationType().getName().equals(annName))
- {
- try
- {
- Method valueMethod = ann.annotationType().getMethod("value", new Class[]{});
- String[] roles = (String[]) valueMethod.invoke(ann, new Object[]{});
- StringBuilder sb = new StringBuilder();
- for (int i = 0; i < roles.length; i++)
- {
- sb.append(roles[i]);
- if (i + 1 < roles.length)
- {
- sb.append(" ");
- }
- }
- return sb.toString();
- }
- catch (java.lang.NoSuchMethodException ex)
- {
- log.info(CLS_NM + ".getRoles annName=" + annName + ", caught NoSuchMethodException=" + ex);
- }
- catch (java.lang.IllegalAccessException ex)
- {
- log.info(CLS_NM + ".getRoles annName=" + annName + ", caught IllegalAccessException=" + ex);
- }
- catch (InvocationTargetException ex)
- {
- log.info(CLS_NM + ".getRoles annName=" + annName + ", caught InvocationTargetException=" + ex);
- }
- break;
- }
- }
- return null;
- }
-}
-