@Before
  public void createDirectoriesAndFiles() throws IOException {
    Path rootFolder = folderRule.getFolder().toPath().toAbsolutePath();

    Path geodePropertiesFile = rootFolder.resolve("geode.properties");
    Path securityPropertiesFile = rootFolder.resolve("security.properties");

    Properties geodeProperties = new Properties();
    geodeProperties.setProperty(LOG_LEVEL, "debug");
    geodeProperties.setProperty("security-username", "propertyFileUser");
    geodeProperties.setProperty("security-password", PASSWORD + "-propertyFile");

    try (FileOutputStream fos = new FileOutputStream(geodePropertiesFile.toFile())) {
      geodeProperties.store(fos, null);
    }

    Properties securityProperties = new Properties();
    securityProperties.setProperty(SECURITY_MANAGER, ExampleSecurityManager.class.getName());
    securityProperties.setProperty(SECURITY_JSON, "security.json");
    securityProperties.setProperty("security-file-username", "securityPropertyFileUser");
    securityProperties.setProperty("security-file-password", PASSWORD + "-securityPropertyFile");

    try (FileOutputStream fos = new FileOutputStream(securityPropertiesFile.toFile())) {
      securityProperties.store(fos, null);
    }

    // The json is in the root resource directory.
    createFileFromResource(getResource("/security.json"), rootFolder.toFile(),
        "security.json");

    locatorPort = getRandomAvailableTCPPort();

    String startLocatorCmd = new CommandStringBuilder("start locator")
        .addOption("name", "test-locator")
        .addOption("port", String.valueOf(locatorPort))
        .addOption("properties-file", geodePropertiesFile.toString())
        .addOption("security-properties-file", securityPropertiesFile.toString())
        .addOption("J", "-Dsecure-username-jd=user-jd")
        .addOption("J", "-Dsecure-password-jd=password-jd")
        .addOption("classpath", rootFolder.toString())
        .getCommandString();

    String startServerCmd = new CommandStringBuilder("start server")
        .addOption("name", "test-server")
        .addOption("locators", "localhost[" + locatorPort + "]")
        .addOption("disable-default-server", "true")
        .addOption("user", "viaStartMemberOptions")
        .addOption("password", PASSWORD + "-viaStartMemberOptions")
        .addOption("properties-file", geodePropertiesFile.toString())
        .addOption("security-properties-file", securityPropertiesFile.toString())
        .addOption("J", "-Dsecure-username-jd=user-jd")
        .addOption("J", "-Dsecure-password-jd=" + PASSWORD + "-password-jd")
        .addOption("classpath", rootFolder.toString())
        .getCommandString();

    gfshRule.execute(startLocatorCmd, startServerCmd);
  }
This test class expects a "security.json" file to be visible on the member classpath. The
security.json is consumed by {@link ExampleSecurityManager} and should contain each
username/password combination present (even though not all will actually be consumed by the
Security Manager).

<p>
Each password shares the string below for easier log scanning.
geode-assembly/src/acceptanceTest/java/org/apache/geode/management/internal/cli/commands/LogsAndDescribeConfigAreFullyRedactedAcceptanceTest.java