geode-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From kl...@apache.org
Subject [2/2] incubator-geode git commit: GEODE-1646: repackage new Security classes in org.apache.geode.security
Date Wed, 13 Jul 2016 00:25:13 GMT
GEODE-1646: repackage new Security classes in org.apache.geode.security

This closes #193


Project: http://git-wip-us.apache.org/repos/asf/incubator-geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-geode/commit/c7667075
Tree: http://git-wip-us.apache.org/repos/asf/incubator-geode/tree/c7667075
Diff: http://git-wip-us.apache.org/repos/asf/incubator-geode/diff/c7667075

Branch: refs/heads/develop
Commit: c7667075aa3ee00de6ec567955377f5a280e643e
Parents: 4352833
Author: gmeilen <gracemeilen@gmail.com>
Authored: Fri Jul 8 15:21:37 2016 -0700
Committer: Kirk Lund <klund@apache.org>
Committed: Tue Jul 12 17:20:44 2016 -0700

----------------------------------------------------------------------
 .../internal/security/GeodeSecurityUtil.java    |  10 +-
 .../security/shiro/CustomAuthRealm.java         |  12 +-
 .../management/AsyncEventQueueMXBean.java       |   4 +-
 .../gemfire/management/CacheServerMXBean.java   |   4 +-
 .../gemfire/management/DiskStoreMXBean.java     |   4 +-
 .../DistributedLockServiceMXBean.java           |   4 +-
 .../management/DistributedRegionMXBean.java     |   4 +-
 .../management/DistributedSystemMXBean.java     |   4 +-
 .../management/GatewayReceiverMXBean.java       |   4 +-
 .../gemfire/management/GatewaySenderMXBean.java |   4 +-
 .../gemfire/management/LocatorMXBean.java       |   4 +-
 .../gemfire/management/LockServiceMXBean.java   |   4 +-
 .../gemfire/management/ManagerMXBean.java       |   4 +-
 .../gemfire/management/MemberMXBean.java        |   4 +-
 .../gemfire/management/RegionMXBean.java        |   4 +-
 .../internal/cli/commands/ClientCommands.java   |   4 +-
 .../internal/cli/commands/ConfigCommands.java   |   4 +-
 .../CreateAlterDestroyRegionCommands.java       |   4 +-
 .../internal/cli/commands/DataCommands.java     |   4 +-
 .../internal/cli/commands/DeployCommands.java   |   4 +-
 .../cli/commands/DiskStoreCommands.java         |   4 +-
 .../cli/commands/DurableClientCommands.java     |   4 +-
 ...ExportImportSharedConfigurationCommands.java |   4 +-
 .../internal/cli/commands/FunctionCommands.java |   4 +-
 .../internal/cli/commands/IndexCommands.java    |   4 +-
 .../internal/cli/commands/MemberCommands.java   |   4 +-
 .../cli/commands/MiscellaneousCommands.java     |   4 +-
 .../internal/cli/commands/PDXCommands.java      |   4 +-
 .../internal/cli/commands/QueueCommands.java    |   4 +-
 .../internal/cli/commands/RegionCommands.java   |   4 +-
 .../internal/cli/commands/StatusCommands.java   |   4 +-
 .../internal/cli/commands/WanCommands.java      |   4 +-
 .../internal/security/MBeanServerWrapper.java   |   2 +-
 .../internal/security/ResourceOperation.java    |   4 +-
 .../gemfire/security/GeodePermission.java       | 110 --------
 .../gemfire/security/PostProcessor.java         |  58 -----
 .../gemfire/security/SecurityManager.java       |  73 ------
 .../security/templates/SamplePostProcessor.java |  44 ----
 .../templates/SampleSecurityManager.java        | 256 -------------------
 .../apache/geode/security/GeodePermission.java  | 110 ++++++++
 .../apache/geode/security/PostProcessor.java    |  58 +++++
 .../apache/geode/security/SecurityManager.java  |  73 ++++++
 .../security/templates/SamplePostProcessor.java |  44 ++++
 .../templates/SampleSecurityManager.java        | 256 +++++++++++++++++++
 .../AnalyzeSerializablesJUnitTest.java          |  17 +-
 .../extension/mock/MockExtensionCommands.java   |   4 +-
 .../internal/cli/CommandManagerJUnitTest.java   |   4 +-
 .../internal/cli/GfshParserJUnitTest.java       |   4 +-
 .../shell/GfshExecutionStrategyJUnitTest.java   |   4 +-
 .../security/GeodePermissionJUnitTest.java      |   6 +-
 .../GeodeSecurityUtilWithIniFileJUnitTest.java  |   2 +-
 .../security/GfshCommandsPostProcessorTest.java |   2 +-
 .../internal/security/JSONAuthorization.java    |   2 +-
 .../internal/security/TestCommand.java          |   2 +-
 ...edSecurityCacheLifecycleIntegrationTest.java |   2 +
 ...ntegratedSecurityPostProcessorDUnitTest.java |   2 +-
 .../security/NoShowValue1PostProcessor.java     |   2 +
 .../gemfire/codeAnalysis/excludedClasses.txt    |   7 +-
 .../codeAnalysis/sanctionedSerializables.txt    |   1 -
 .../security/CQPostProcessorDunitTest.java      |   2 +-
 .../internal/cli/LuceneIndexCommands.java       |  16 +-
 .../management/LuceneServiceMXBean.java         |   5 +-
 62 files changed, 650 insertions(+), 664 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/internal/security/GeodeSecurityUtil.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/security/GeodeSecurityUtil.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/security/GeodeSecurityUtil.java
index ecf16f6..c56eb03 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/security/GeodeSecurityUtil.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/security/GeodeSecurityUtil.java
@@ -49,12 +49,12 @@ import com.gemstone.gemfire.management.internal.security.ResourceOperation;
 import com.gemstone.gemfire.security.AuthenticationFailedException;
 import com.gemstone.gemfire.security.AuthenticationRequiredException;
 import com.gemstone.gemfire.security.GemFireSecurityException;
-import com.gemstone.gemfire.security.GeodePermission;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 import com.gemstone.gemfire.security.NotAuthorizedException;
-import com.gemstone.gemfire.security.PostProcessor;
-import com.gemstone.gemfire.security.SecurityManager;
+import org.apache.geode.security.PostProcessor;
+import org.apache.geode.security.SecurityManager;
 
 public class GeodeSecurityUtil {
 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/internal/security/shiro/CustomAuthRealm.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/internal/security/shiro/CustomAuthRealm.java b/geode-core/src/main/java/com/gemstone/gemfire/internal/security/shiro/CustomAuthRealm.java
index f31189d..362d3df 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/internal/security/shiro/CustomAuthRealm.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/internal/security/shiro/CustomAuthRealm.java
@@ -19,8 +19,6 @@ package com.gemstone.gemfire.internal.security.shiro;
 import java.security.Principal;
 import java.util.Properties;
 
-import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.Logger;
 import org.apache.shiro.authc.AuthenticationException;
 import org.apache.shiro.authc.AuthenticationInfo;
 import org.apache.shiro.authc.AuthenticationToken;
@@ -33,13 +31,13 @@ import org.apache.shiro.subject.PrincipalCollection;
 
 import com.gemstone.gemfire.internal.security.GeodeSecurityUtil;
 import com.gemstone.gemfire.management.internal.security.ResourceConstants;
-import com.gemstone.gemfire.security.GeodePermission;
-import com.gemstone.gemfire.security.SecurityManager;
+import org.apache.geode.security.SecurityManager;
+import org.apache.geode.security.GeodePermission;
 
 public class CustomAuthRealm extends AuthorizingRealm{
-  public static final String REALM_NAME = "CUSTOMAUTHREALM";
 
-  private static final Logger logger = LogManager.getLogger(CustomAuthRealm.class);
+  private static final String REALM_NAME = "CUSTOMAUTHREALM";
+
   private SecurityManager securityManager = null;
 
   public CustomAuthRealm(SecurityManager securityManager) {
@@ -65,7 +63,6 @@ public class CustomAuthRealm extends AuthorizingRealm{
     return new SimpleAuthenticationInfo(principal, authToken.getPassword(), REALM_NAME);
   }
 
-
   @Override
   protected AuthorizationInfo doGetAuthorizationInfo(PrincipalCollection principals) {
     // we intercepted the call to this method by overriding the isPermitted call
@@ -79,5 +76,4 @@ public class CustomAuthRealm extends AuthorizingRealm{
     return securityManager.authorize(principal, context);
   }
 
-
 }

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/AsyncEventQueueMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/AsyncEventQueueMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/AsyncEventQueueMXBean.java
index 16df5f2..093bee6 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/AsyncEventQueueMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/AsyncEventQueueMXBean.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.management;
 
 import com.gemstone.gemfire.cache.asyncqueue.AsyncEventQueue;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to an {@link AsyncEventQueue}.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
index deffc5d..94dcbbb 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/CacheServerMXBean.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.management;
 
 import com.gemstone.gemfire.cache.server.CacheServer;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
index 7729505..484c43b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DiskStoreMXBean.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.management;
 
 import com.gemstone.gemfire.cache.DiskStore;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
index b18723a..26f785b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedLockServiceMXBean.java
@@ -20,8 +20,8 @@ import java.util.Map;
 
 import com.gemstone.gemfire.distributed.DistributedLockService;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information for a named instance of {@link DistributedLockService}.

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedRegionMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedRegionMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedRegionMXBean.java
index 6bf462e..4e384da 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedRegionMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedRegionMXBean.java
@@ -22,8 +22,8 @@ import com.gemstone.gemfire.cache.EvictionAlgorithm;
 import com.gemstone.gemfire.cache.Region;
 import com.gemstone.gemfire.cache.wan.GatewaySender;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
index 4975513..2cbb912 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/DistributedSystemMXBean.java
@@ -24,8 +24,8 @@ import com.gemstone.gemfire.cache.Region;
 import com.gemstone.gemfire.distributed.DistributedMember;
 import com.gemstone.gemfire.distributed.DistributedSystem;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management operations for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
index f0b34ba..9c7011c 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewayReceiverMXBean.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.management;
 
 import com.gemstone.gemfire.cache.wan.GatewayReceiver;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
index 769795d..429e155 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/GatewaySenderMXBean.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.management;
 
 import com.gemstone.gemfire.cache.wan.GatewaySender;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/LocatorMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/LocatorMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/LocatorMXBean.java
index 64db8f4..c81267c 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/LocatorMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/LocatorMXBean.java
@@ -18,8 +18,8 @@ package com.gemstone.gemfire.management;
 
 import com.gemstone.gemfire.distributed.Locator;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
index b2fc1ee..e255915 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/LockServiceMXBean.java
@@ -20,8 +20,8 @@ import java.util.Map;
 
 import com.gemstone.gemfire.distributed.internal.locks.DLockService;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
index 99c5cad..709b267 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/ManagerMXBean.java
@@ -20,8 +20,8 @@ import javax.management.JMException;
 
 import com.gemstone.gemfire.management.internal.Manager;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
index 3ed7930..a3b036f 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/MemberMXBean.java
@@ -20,8 +20,8 @@ import java.util.Map;
 
 import com.gemstone.gemfire.distributed.DistributedMember;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java b/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
index 260edd6..397b1d9 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/RegionMXBean.java
@@ -21,8 +21,8 @@ import com.gemstone.gemfire.cache.CacheWriter;
 import com.gemstone.gemfire.cache.EvictionAlgorithm;
 import com.gemstone.gemfire.cache.Region;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * MBean that provides access to information and management functionality for a

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
index 9413d31..83501ac 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ClientCommands.java
@@ -47,8 +47,8 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
index b046a46..900f204 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ConfigCommands.java
@@ -59,8 +59,8 @@ import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
 import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
index e0de649..3d49845 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/CreateAlterDestroyRegionCommands.java
@@ -83,8 +83,8 @@ import com.gemstone.gemfire.management.internal.cli.util.RegionPath;
 import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
 import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  *

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
index a727b5c..b6ee8b5 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DataCommands.java
@@ -77,8 +77,8 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 /**
  * 

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
index 29eac2f..131775b 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DeployCommands.java
@@ -45,8 +45,8 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
index a543a4b..a98bf80 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DiskStoreCommands.java
@@ -91,8 +91,8 @@ import com.gemstone.gemfire.management.internal.configuration.SharedConfiguratio
 import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
 import com.gemstone.gemfire.management.internal.messages.CompactRequest;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
 import org.springframework.shell.core.annotation.CliCommand;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
index 20b15b6..3f97e5d 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/DurableClientCommands.java
@@ -43,8 +43,8 @@ import com.gemstone.gemfire.management.internal.cli.result.InfoResultData;
 import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
 import org.springframework.shell.core.annotation.CliCommand;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
index 16cba87..268a1e4 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/ExportImportSharedConfigurationCommands.java
@@ -44,8 +44,8 @@ import com.gemstone.gemfire.management.internal.cli.result.InfoResultData;
 import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
 import org.springframework.shell.core.annotation.CliCommand;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
index 22676a6..cb61243 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/FunctionCommands.java
@@ -60,8 +60,8 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/IndexCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/IndexCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/IndexCommands.java
index c9cb647..23d09dd 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/IndexCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/IndexCommands.java
@@ -57,8 +57,8 @@ import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
 import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
 import org.springframework.shell.core.annotation.CliCommand;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MemberCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MemberCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MemberCommands.java
index 9fe59ac..c4e1b83 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MemberCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MemberCommands.java
@@ -43,8 +43,8 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MiscellaneousCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MiscellaneousCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MiscellaneousCommands.java
index 5359561..ab5917d 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MiscellaneousCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/MiscellaneousCommands.java
@@ -112,8 +112,8 @@ import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.cli.util.MergeLogs;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/PDXCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/PDXCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/PDXCommands.java
index 7c82f8d..ae8f36a 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/PDXCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/PDXCommands.java
@@ -41,8 +41,8 @@ import com.gemstone.gemfire.management.internal.security.ResourceOperation;
 import com.gemstone.gemfire.pdx.ReflectionBasedAutoSerializer;
 import com.gemstone.gemfire.pdx.internal.EnumInfo;
 import com.gemstone.gemfire.pdx.internal.PdxType;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;
 import org.springframework.shell.core.annotation.CliCommand;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/QueueCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/QueueCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/QueueCommands.java
index 466cb86..638e402 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/QueueCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/QueueCommands.java
@@ -42,8 +42,8 @@ import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
 import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/RegionCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/RegionCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/RegionCommands.java
index d7fb1cc..e2e9e12 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/RegionCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/RegionCommands.java
@@ -50,8 +50,8 @@ import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.cli.util.RegionAttributesNames;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/StatusCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/StatusCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/StatusCommands.java
index 5306aff..4b94813 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/StatusCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/StatusCommands.java
@@ -34,8 +34,8 @@ import com.gemstone.gemfire.management.internal.cli.result.ResultBuilder;
 import com.gemstone.gemfire.management.internal.cli.result.TabularResultData;
 import com.gemstone.gemfire.management.internal.configuration.domain.SharedConfigurationStatus;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/WanCommands.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/WanCommands.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/WanCommands.java
index ccce8e4..9bd0248 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/WanCommands.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/cli/commands/WanCommands.java
@@ -60,8 +60,8 @@ import com.gemstone.gemfire.management.internal.cli.shell.Gfsh;
 import com.gemstone.gemfire.management.internal.configuration.SharedConfigurationWriter;
 import com.gemstone.gemfire.management.internal.configuration.domain.XmlEntity;
 import com.gemstone.gemfire.management.internal.security.ResourceOperation;
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 import org.springframework.shell.core.CommandMarker;
 import org.springframework.shell.core.annotation.CliAvailabilityIndicator;

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/MBeanServerWrapper.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/MBeanServerWrapper.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/MBeanServerWrapper.java
index 8943dfb..a9b4855 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/MBeanServerWrapper.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/MBeanServerWrapper.java
@@ -47,7 +47,7 @@ import javax.management.remote.MBeanServerForwarder;
 import com.gemstone.gemfire.management.internal.ManagementConstants;
 import com.gemstone.gemfire.security.GemFireSecurityException;
 import com.gemstone.gemfire.internal.security.GeodeSecurityUtil;
-import com.gemstone.gemfire.security.GeodePermission;
+import org.apache.geode.security.GeodePermission;
 
 /**
  * This class intercepts all MBean requests for GemFire MBeans and passed it to

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/ResourceOperation.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/ResourceOperation.java b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/ResourceOperation.java
index 9f62d0d..694ec7d 100644
--- a/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/ResourceOperation.java
+++ b/geode-core/src/main/java/com/gemstone/gemfire/management/internal/security/ResourceOperation.java
@@ -23,8 +23,8 @@ import java.lang.annotation.RetentionPolicy;
 import java.lang.annotation.Target;
 import javax.management.DescriptorKey;
 
-import com.gemstone.gemfire.security.GeodePermission.Operation;
-import com.gemstone.gemfire.security.GeodePermission.Resource;
+import org.apache.geode.security.GeodePermission.Operation;
+import org.apache.geode.security.GeodePermission.Resource;
 
 @Target({ElementType.METHOD, ElementType.TYPE})
 @Retention(RetentionPolicy.RUNTIME)

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/security/GeodePermission.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/security/GeodePermission.java b/geode-core/src/main/java/com/gemstone/gemfire/security/GeodePermission.java
deleted file mode 100644
index 22b53b1..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/security/GeodePermission.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.gemstone.gemfire.security;
-
-import org.apache.shiro.authz.permission.WildcardPermission;
-
-public class GeodePermission extends WildcardPermission {
-
-  public static String ALL_REGIONS = "*";
-  public static String ALL_KEYS = "*";
-
-  public enum Resource {
-    NULL,
-    CLUSTER,
-    DATA
-  }
-
-  public enum Operation {
-    NULL,
-    MANAGE,
-    WRITE,
-    READ
-  }
-
-  public Resource getResource() {
-    return resource;
-  }
-
-  public Operation getOperation() {
-    return operation;
-  }
-
-  public String getRegionName() {
-    return regionName;
-  }
-
-  public String getKey() {
-    return key;
-  }
-
-  // these default values are used when creating a lock around an operation
-  private Resource resource = Resource.NULL;
-  private Operation operation = Operation.NULL;
-  private String regionName = ALL_REGIONS;
-  private String key = ALL_KEYS;
-
-  public GeodePermission() {
-    this(Resource.NULL, Operation.NULL);
-  }
-
-  public GeodePermission(String resource, String operation) {
-    this(resource, operation, ALL_REGIONS);
-  }
-
-  public GeodePermission(String resource, String operation, String regionName) {
-    this(resource, operation, regionName, ALL_KEYS);
-  }
-
-  public GeodePermission(String resource, String operation, String regionName, String key) {
-    this((resource==null) ? Resource.NULL : Resource.valueOf(resource),
-      (operation == null) ? Operation.NULL : Operation.valueOf(operation),
-      regionName,
-      key);
-  }
-
-  public GeodePermission(Resource resource, Operation operation){
-    this(resource, operation, ALL_REGIONS);
-  }
-
-  public GeodePermission(Resource resource, Operation operation, String regionName){
-    this(resource, operation, regionName, ALL_KEYS);
-  }
-
-  public GeodePermission(Resource resource, Operation operation, String regionName, String key){
-    if(resource != null) this.resource = resource;
-    if(operation != null) this.operation = operation;
-    if(regionName != null) this.regionName = regionName;
-    if(key != null) this.key = key;
-
-    setParts(this.resource+":"+this.operation+":"+this.regionName+":"+this.key, true);
-  }
-
-  @Override
-  public String toString() {
-    if (ALL_REGIONS.equals(regionName)) {
-      return getResource() + ":" + getOperation();
-    } else if(ALL_KEYS.equals(key)) {
-      return resource + ":" + operation + ":" + regionName;
-    }
-    else{
-      return resource + ":" + operation + ":" + regionName + ":" + key;
-    }
-  }
-
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/security/PostProcessor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/security/PostProcessor.java b/geode-core/src/main/java/com/gemstone/gemfire/security/PostProcessor.java
deleted file mode 100644
index b986d19..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/security/PostProcessor.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.gemstone.gemfire.security;
-
-import java.security.Principal;
-import java.util.Properties;
-
-/**
- * PostProcessor allows the customer to massage the values seen by a particular user.
- *
- * @since Geode 1.0
- */
-public interface PostProcessor {
-
-  /**
-   * Given the security props of the server, properly initialize the post processor for the server.
-   * Initialized at cache creation
-   * @param securityProps
-   */
-  default void init(Properties securityProps) {}
-
-  /**
-   * Process the value before sending it to the requester
-   *
-   * @param principal
-   *        The principal that's accessing the value
-   * @param regionName
-   *        The region that's been accessed. This could be null.
-   * @param key
-   *        the key of the value that's been accessed. This could be null.
-   * @param value
-   *        the value, this could be null.
-   * @return
-   *        the value that will be returned to the requester
-   */
-  Object processRegionValue(Principal principal, String regionName, Object key,  Object value);
-
-  /**
-   * Give the implementation a chance to close the resources used.
-   * Called when cache is closed.
-   */
-  default void close() {}
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/security/SecurityManager.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/security/SecurityManager.java b/geode-core/src/main/java/com/gemstone/gemfire/security/SecurityManager.java
deleted file mode 100644
index c3dc575..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/security/SecurityManager.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.gemstone.gemfire.security;
-
-import java.security.Principal;
-import java.util.Properties;
-
-import com.gemstone.gemfire.distributed.DistributedSystem;
-
-/**
- * User implementation of a authentication/authorization logic for Integrated Security.
- * The implementation will guard client/server, jmx, pulse, gfsh commands
- *
- * @since Geode 1.0
- */
-public interface SecurityManager {
-
-  /**
-   * Initialize the SecurityManager. This is invoked when a cache is created
-   *
-   * @param securityProps
-   *                the security properties obtained using a call to
-   *                {@link DistributedSystem#getSecurityProperties}
-   * @throws AuthenticationFailedException
-   *                 if some exception occurs during the initialization
-   */
-  default void init(Properties securityProps) {}
-
-  /**
-   * Verify the credentials provided in the properties
-   * @param props:
-   *        it contains the security-username and security-password as keys of the properties
-   * @return
-   *        the authenticated Principal object
-   * @throws AuthenticationFailedException
-   */
-
-  Principal authenticate(Properties props) throws AuthenticationFailedException;
-
-
-  /**
-   * Authorize the GeodePermission for a given Principal
-   * @param principal
-   *        The principal that's requesting the permission
-   * @param permission
-   *        The permission requested
-   * @return
-   *        true if authorized, false if not
-   */
-  default boolean authorize(Principal principal, GeodePermission permission) {
-    return true;
-  }
-
-  /**
-   * close any resources used by the SecurityManager, called when a cache is closed.
-   */
-  default void close() {}
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SamplePostProcessor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SamplePostProcessor.java b/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SamplePostProcessor.java
deleted file mode 100644
index 8f13deb..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SamplePostProcessor.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.gemstone.gemfire.security.templates;
-
-import java.security.Principal;
-import java.util.Properties;
-
-import com.gemstone.gemfire.security.PostProcessor;
-
-public class SamplePostProcessor implements PostProcessor{
-  public static String MASK = "****";
-
-  public static SamplePostProcessor create(){
-    return new SamplePostProcessor();
-  }
-
-  @Override
-  public void init(final Properties securityProps) {
-
-  }
-
-  @Override
-  public Object processRegionValue(Principal principal,
-                                   String regionName,
-                                   Object key,
-                                   Object value) {
-    return principal.getName()+"/"+regionName+"/"+key+"/"+value;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SampleSecurityManager.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SampleSecurityManager.java b/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SampleSecurityManager.java
deleted file mode 100644
index 6f904c8..0000000
--- a/geode-core/src/main/java/com/gemstone/gemfire/security/templates/SampleSecurityManager.java
+++ /dev/null
@@ -1,256 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.gemstone.gemfire.security.templates;
-
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.StringWriter;
-import java.security.Principal;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-import java.util.stream.Collectors;
-import java.util.stream.StreamSupport;
-
-import javax.management.remote.JMXPrincipal;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import org.apache.commons.io.IOUtils;
-import org.apache.shiro.authz.Permission;
-
-import com.gemstone.gemfire.management.internal.security.ResourceConstants;
-import com.gemstone.gemfire.security.AuthenticationFailedException;
-import com.gemstone.gemfire.security.GeodePermission;
-import com.gemstone.gemfire.security.NotAuthorizedException;
-import com.gemstone.gemfire.security.SecurityManager;
-
-/**
- * This class provides a sample implementation for authentication and authorization via the {@link SecurityManager}
- *
- * In order to use it, a Geode member must be started with the following properties:
- * <p/>
- * <code>
- *   security-manager = com.gemstone.gemfire.security.examples.SampleSecurityManager.create
- * </code>
- * <p/>
- * The class is initialized with a JSON file called {@code security.json}. This file must exist on the classpath,
- * so members should be started with an appropriate {@code --classpath} option.
- * <p/>
- * The format of the file is as follows:
- * <pre>
- * {
- *   "roles": [
- *     {
- *       "name": "admin",
- *       "operationsAllowed": [
- *         "CLUSTER:MANAGE",
- *         "DATA:MANAGE"
- *       ]
- *     },
- *     {
- *       "name": "readRegionA",
- *       "operationsAllowed": [
- *         "DATA:READ"
- *       ],
- *       "regions": ["RegionA", "RegionB"]
- *     }
- *   ]
- *   "users": [
- *     {
- *       "name": "admin",
- *       "password": "secret".
- *       "roles": ["admin"]
- *     },
- *     {
- *       "name": "guest",
- *       "password": "guest",
- *       "roles": ["readRegionA"]
- *     }
- *   ]
- * }
- * </pre>
- */
-public class SampleSecurityManager implements SecurityManager {
-
-  public static class Role {
-    List<GeodePermission> permissions = new ArrayList<>();
-    String name;
-    String serverGroup;
-  }
-
-  public static class User {
-    String name;
-    Set<Role> roles = new HashSet<>();
-    String pwd;
-  }
-
-  private static Map<String, User> acl = null;
-
-  public static SampleSecurityManager create() throws IOException {
-    if (acl == null) {
-      setUpWithJsonFile("security.json");
-    }
-    return new SampleSecurityManager();
-  }
-
-  public static void setUpWithJsonFile(String jsonFileName) throws IOException {
-    InputStream input = ClassLoader.getSystemResourceAsStream(jsonFileName);
-    if (input == null) {
-      throw new RuntimeException("Could not find the required JSON security file on the classpath: " + jsonFileName);
-    }
-
-    StringWriter writer = new StringWriter();
-    IOUtils.copy(input, writer, "UTF-8");
-    String json = writer.toString();
-    readSecurityDescriptor(json);
-  }
-
-  protected static void readSecurityDescriptor(String json) throws IOException {
-    ObjectMapper mapper = new ObjectMapper();
-    JsonNode jsonNode = mapper.readTree(json);
-    acl = new HashMap<>();
-    Map<String, Role> roleMap = readRoles(jsonNode);
-    readUsers(acl, jsonNode, roleMap);
-  }
-
-  private static void readUsers(Map<String, User> acl, JsonNode node, Map<String, Role> roleMap) {
-    for (JsonNode u : node.get("users")) {
-      User user = new User();
-      user.name = u.get("name").asText();
-
-      if (u.has("password")) {
-        user.pwd = u.get("password").asText();
-      } else {
-        user.pwd = user.name;
-      }
-
-      for (JsonNode r : u.get("roles")) {
-        user.roles.add(roleMap.get(r.asText()));
-      }
-
-      acl.put(user.name, user);
-    }
-  }
-
-  private static Map<String, Role> readRoles(JsonNode jsonNode) {
-    Map<String, Role> roleMap = new HashMap<>();
-    for (JsonNode r : jsonNode.get("roles")) {
-      Role role = new Role();
-      role.name = r.get("name").asText();
-      String regionNames = null;
-      String keys = null;
-
-      JsonNode regions = r.get("regions");
-      if (regions != null) {
-        if (regions.isArray()) {
-          regionNames = StreamSupport.stream(regions.spliterator(), false)
-              .map(JsonNode::asText)
-              .collect(Collectors.joining(","));
-        } else {
-          regionNames = regions.asText();
-        }
-      }
-
-      for (JsonNode op : r.get("operationsAllowed")) {
-        String[] parts = op.asText().split(":");
-        String resourcePart = (parts.length > 0) ? parts[0] : null;
-        String operationPart = (parts.length > 1) ? parts[1] : null;
-        if(parts.length>2){
-          regionNames = parts[2];
-        }
-        if(parts.length>3){
-          keys = parts[3];
-        }
-        String regionPart = (regionNames != null) ? regionNames : "*";
-        String keyPart = (keys !=null) ? keys : "*";
-
-        role.permissions.add(new GeodePermission(resourcePart, operationPart, regionPart, keyPart));
-      }
-
-      roleMap.put(role.name, role);
-
-      if (r.has("serverGroup")) {
-        role.serverGroup = r.get("serverGroup").asText();
-      }
-    }
-
-    return roleMap;
-  }
-  public static Map<String, User> getAcl() {
-    return acl;
-  }
-
-  private Principal principal = null;
-
-
-  @Override
-  public boolean authorize(Principal principal, GeodePermission context) {
-    if (principal == null) return false;
-
-    User user = acl.get(principal.getName());
-    if (user == null) return false; // this user is not authorized to do anything
-
-    // check if the user has this permission defined in the context
-    for (Role role : acl.get(user.name).roles) {
-      for (Permission permitted : role.permissions) {
-        if (permitted.implies(context)) {
-          return true;
-        }
-      }
-    }
-
-    return false;
-  }
-
-  @Override
-  public void init(Properties props) throws NotAuthorizedException {
-  }
-
-  @Override
-  public Principal authenticate(Properties props) throws AuthenticationFailedException {
-    String user = props.getProperty(ResourceConstants.USER_NAME);
-    String pwd = props.getProperty(ResourceConstants.PASSWORD);
-
-    User userObj = acl.get(user);
-    if (userObj == null) {
-      throw new AuthenticationFailedException("Wrong username/password");
-    }
-
-    if (user != null && !userObj.pwd.equals(pwd) && !"".equals(user)) {
-      throw new AuthenticationFailedException("Wrong username/password");
-    }
-
-    return new JMXPrincipal(user);
-  }
-
-  protected static String readFile(String name) throws IOException {
-    File file = new File(name);
-    FileReader reader = new FileReader(file);
-    char[] buffer = new char[(int) file.length()];
-    reader.read(buffer);
-    String json = new String(buffer);
-    reader.close();
-    return json;
-  }
-}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/org/apache/geode/security/GeodePermission.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/security/GeodePermission.java b/geode-core/src/main/java/org/apache/geode/security/GeodePermission.java
new file mode 100644
index 0000000..866b14e
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/security/GeodePermission.java
@@ -0,0 +1,110 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.geode.security;
+
+import org.apache.shiro.authz.permission.WildcardPermission;
+
+public class GeodePermission extends WildcardPermission {
+
+  public static String ALL_REGIONS = "*";
+  public static String ALL_KEYS = "*";
+
+  public enum Resource {
+    NULL,
+    CLUSTER,
+    DATA
+  }
+
+  public enum Operation {
+    NULL,
+    MANAGE,
+    WRITE,
+    READ
+  }
+
+  public Resource getResource() {
+    return resource;
+  }
+
+  public Operation getOperation() {
+    return operation;
+  }
+
+  public String getRegionName() {
+    return regionName;
+  }
+
+  public String getKey() {
+    return key;
+  }
+
+  // these default values are used when creating a lock around an operation
+  private Resource resource = Resource.NULL;
+  private Operation operation = Operation.NULL;
+  private String regionName = ALL_REGIONS;
+  private String key = ALL_KEYS;
+
+  public GeodePermission() {
+    this(Resource.NULL, Operation.NULL);
+  }
+
+  public GeodePermission(String resource, String operation) {
+    this(resource, operation, ALL_REGIONS);
+  }
+
+  public GeodePermission(String resource, String operation, String regionName) {
+    this(resource, operation, regionName, ALL_KEYS);
+  }
+
+  public GeodePermission(String resource, String operation, String regionName, String key) {
+    this((resource==null) ? Resource.NULL : Resource.valueOf(resource),
+      (operation == null) ? Operation.NULL : Operation.valueOf(operation),
+      regionName,
+      key);
+  }
+
+  public GeodePermission(Resource resource, Operation operation){
+    this(resource, operation, ALL_REGIONS);
+  }
+
+  public GeodePermission(Resource resource, Operation operation, String regionName){
+    this(resource, operation, regionName, ALL_KEYS);
+  }
+
+  public GeodePermission(Resource resource, Operation operation, String regionName, String key){
+    if(resource != null) this.resource = resource;
+    if(operation != null) this.operation = operation;
+    if(regionName != null) this.regionName = regionName;
+    if(key != null) this.key = key;
+
+    setParts(this.resource+":"+this.operation+":"+this.regionName+":"+this.key, true);
+  }
+
+  @Override
+  public String toString() {
+    if (ALL_REGIONS.equals(regionName)) {
+      return getResource() + ":" + getOperation();
+    } else if(ALL_KEYS.equals(key)) {
+      return resource + ":" + operation + ":" + regionName;
+    }
+    else{
+      return resource + ":" + operation + ":" + regionName + ":" + key;
+    }
+  }
+
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/org/apache/geode/security/PostProcessor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/security/PostProcessor.java b/geode-core/src/main/java/org/apache/geode/security/PostProcessor.java
new file mode 100644
index 0000000..0f13b47
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/security/PostProcessor.java
@@ -0,0 +1,58 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.geode.security;
+
+import java.security.Principal;
+import java.util.Properties;
+
+/**
+ * PostProcessor allows the customer to massage the values seen by a particular user.
+ *
+ * @since Geode 1.0
+ */
+public interface PostProcessor {
+
+  /**
+   * Given the security props of the server, properly initialize the post processor for the server.
+   * Initialized at cache creation
+   * @param securityProps
+   */
+  default void init(Properties securityProps) {}
+
+  /**
+   * Process the value before sending it to the requester
+   *
+   * @param principal
+   *        The principal that's accessing the value
+   * @param regionName
+   *        The region that's been accessed. This could be null.
+   * @param key
+   *        the key of the value that's been accessed. This could be null.
+   * @param value
+   *        the value, this could be null.
+   * @return
+   *        the value that will be returned to the requester
+   */
+  Object processRegionValue(Principal principal, String regionName, Object key,  Object value);
+
+  /**
+   * Give the implementation a chance to close the resources used.
+   * Called when cache is closed.
+   */
+  default void close() {}
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/org/apache/geode/security/SecurityManager.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/security/SecurityManager.java b/geode-core/src/main/java/org/apache/geode/security/SecurityManager.java
new file mode 100644
index 0000000..f5cb7f3
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/security/SecurityManager.java
@@ -0,0 +1,73 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.geode.security;
+
+import java.security.Principal;
+import java.util.Properties;
+
+import com.gemstone.gemfire.distributed.DistributedSystem;
+import com.gemstone.gemfire.security.AuthenticationFailedException;
+
+/**
+ * User implementation of a authentication/authorization logic for Integrated Security.
+ * The implementation will guard client/server, jmx, pulse, gfsh commands
+ *
+ * @since Geode 1.0
+ */
+public interface SecurityManager {
+
+  /**
+   * Initialize the SecurityManager. This is invoked when a cache is created
+   *
+   * @param securityProps
+   *                the security properties obtained using a call to
+   *                {@link DistributedSystem#getSecurityProperties}
+   * @throws AuthenticationFailedException
+   *                 if some exception occurs during the initialization
+   */
+  default void init(Properties securityProps) {}
+
+  /**
+   * Verify the credentials provided in the properties
+   * @param props:
+   *        it contains the security-username and security-password as keys of the properties
+   * @return
+   *        the authenticated Principal object
+   * @throws AuthenticationFailedException
+   */
+
+  Principal authenticate(Properties props) throws AuthenticationFailedException;
+
+
+  /**
+   * Authorize the GeodePermission for a given Principal
+   * @param principal
+   *        The principal that's requesting the permission
+   * @param permission
+   *        The permission requested
+   * @return
+   *        true if authorized, false if not
+   */
+  default boolean authorize(Principal principal, GeodePermission permission) {
+    return true;
+  }
+
+  /**
+   * close any resources used by the SecurityManager, called when a cache is closed.
+   */
+  default void close() {}
+}

http://git-wip-us.apache.org/repos/asf/incubator-geode/blob/c7667075/geode-core/src/main/java/org/apache/geode/security/templates/SamplePostProcessor.java
----------------------------------------------------------------------
diff --git a/geode-core/src/main/java/org/apache/geode/security/templates/SamplePostProcessor.java b/geode-core/src/main/java/org/apache/geode/security/templates/SamplePostProcessor.java
new file mode 100644
index 0000000..1245c1d
--- /dev/null
+++ b/geode-core/src/main/java/org/apache/geode/security/templates/SamplePostProcessor.java
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.geode.security.templates;
+
+import java.security.Principal;
+import java.util.Properties;
+
+import org.apache.geode.security.PostProcessor;
+
+public class SamplePostProcessor implements PostProcessor{
+  public static String MASK = "****";
+
+  public static SamplePostProcessor create(){
+    return new SamplePostProcessor();
+  }
+
+  @Override
+  public void init(final Properties securityProps) {
+
+  }
+
+  @Override
+  public Object processRegionValue(Principal principal,
+                                   String regionName,
+                                   Object key,
+                                   Object value) {
+    return principal.getName()+"/"+regionName+"/"+key+"/"+value;
+  }
+}


Mime
View raw message