feat(portal): add option to `apiman.properties` for Keycloak/auth public endpoint
Only useful for Portal, for now.
MODIFY
distro/wildfly/src/main/resources/overlay/standalone/configuration/apiman.properties
distro/wildfly/src/main/resources/overlay/standalone/configuration/apiman.properties
@@ -56,6 +56,9 @@ apiman-manager-ui.endpoint=http://localhost:8080/apimanui/api-manager/
# and Apiman Developer Portal can speak to the Apiman Manager API, especially with Docker or similar.
# apiman-manager-ui.api.endpoint=http://localhost:8080/apiman
+# You can override the default location that the portal expects Keycloak to be if it's different internally vs externally.
+# apiman.auth.public.url=
+
# Security context settings.
apiman-manager.security-context.type=keycloak

MODIFY
portal/war/wildfly/src/main/java/io/apiman/portal/SplitterFilter.java
portal/war/wildfly/src/main/java/io/apiman/portal/SplitterFilter.java
@@ -104,6 +104,9 @@ public class SplitterFilter implements Filter {
if (!config.containsKey("apiman-manager-ui.api.endpoint")) {
System.setProperty("apiman-manager-ui.api.endpoint", defaultApiEndpoint);
}
+ if (!config.containsKey("apiman.auth.public.url")) {
+ System.setProperty("apiman.auth.public.url", config.getString("apiman.auth.url"));
+ }
String str = FileUtils.readFileToString(resourceRoot.resolve(path).toFile(), StandardCharsets.UTF_8);
return config.getSubstitutor().replace(str);
} catch (IOException e) {

feat(portal): add option to `apiman.properties` for Keycloak/auth public endpoint

Only useful for Portal, for now.