@Override
  public void init(final Principal principal, final DistributedMember remoteMember,
      final Cache cache) throws NotAuthorizedException {
    if (principal != null) {

      final String name = principal.getName().toLowerCase();

      if (name != null) {

        if (name.equals("root") || name.equals("admin") || name.equals("administrator")) {
          addReaderOps();
          addWriterOps();
          allowedOps.add(OperationCode.REGION_CREATE);
          allowedOps.add(OperationCode.REGION_DESTROY);

        } else if (name.startsWith("writer")) {
          addWriterOps();

        } else if (name.startsWith("reader")) {
          addReaderOps();
        }

      }
    }

    this.remoteMember = remoteMember;
    securityLogWriter = cache.getSecurityLogger();
  }
A dummy implementation of the {@code AccessControl} interface that allows authorization depending
on the format of the {@code Principal} string.

@since GemFire 5.5
geode-dunit/src/main/java/org/apache/geode/security/templates/DummyAuthorization.java