@Test
  public void startServer2_not_authorized() {
    Properties props = new Properties();
    props.setProperty(SECURITY_PEER_AUTH_INIT, MyAuthInit.class.getName());
    props.setProperty("security-name", "server-2");
    int locatorPort = locator.getPort();
    cluster.getVM(2).invoke(() -> {
      ServerStarterRule server = new ServerStarterRule();
      server.withProperties(props).withConnectionToLocator(locatorPort).withAutoStart();
      assertThatThrownBy(server::before).isInstanceOf(GemFireSecurityException.class)
          .hasMessageContaining("server-2 not authorized for CLUSTER:MANAGE");
    });
  }
this test specifically uses a peer-auth-init that doesn't produce credentials that has
security-username or security-password. It produces a property that its SecurityManager
knows how to authenticate/authorize. It's just to show that we can pass in properties
other than security-username and security-password. But this will be doable only in peer/client
case. For gfsh/rest, we still expected the credentials to be wrapped as expected.
geode-core/src/distributedTest/java/org/apache/geode/security/IntegratedSecurityPeerAuthDUnitTest.java