public static ImmutableBiMap<String, String> parseAliases(
            Properties properties) {
        Map<String, String> backendBuckets = new HashMap<>();
        for (String key : properties.stringPropertyNames()) {
            if (key.startsWith(S3ProxyConstants.PROPERTY_ALIAS_BLOBSTORE)) {
                String virtualBucket = key.substring(
                        S3ProxyConstants.PROPERTY_ALIAS_BLOBSTORE.length() + 1);
                String backendBucket = properties.getProperty(key);
                checkArgument(
                        !backendBuckets.containsKey(backendBucket),
                        "Backend bucket %s is aliased twice",
                        backendBucket);
                backendBuckets.put(backendBucket, virtualBucket);
            }
        }
        return ImmutableBiMap.copyOf(backendBuckets).inverse();
    }
This class implements a middleware to alias buckets to a different name.
The aliases are configured as:
  s3proxy.alias-blobstore.&lt;alias name&gt; = &lt;backend bucket&gt;

The aliases appear in bucket listings if the configured
backend buckets are present. Requests for all other buckets are unaffected.
src/main/java/org/gaul/s3proxy/AliasBlobStore.java