I'm setting the Shared Components > Authentication > Configuration Procedure to my_auth_config
my_auth_config is defined as
create or replace procedure my_auth_config (
p_conf in out nocopy apex_authentication.t_configuration )
is
begin
p_conf.authentication_name := 'KEYCLOAK';
p_conf.substitutions := apex_t_varchar2 (
'CREDENTIAL_STATIC_ID', 'KEYCLOAK',
'DISCOVERY_URL' , 'https://identity.example.io/realms/APEX11/.well-known/openid-configuration'
);
end my_auth_config;
/
Note the APEX11 in the URL
My Credential Static ID is KEYCLOAK and correctly labelled in the code

My current authentication scheme is (1) social sign-in (2) Switch in Session = Enabled (3) called KEYCLOAK and again correctly referenced in the code (4) Note APEX10 in the URL

What I want to happen
1. The Authentication scheme has APEX10 in the Discovery URL
2. I want to use my_auth_config to switch to the Discovery URL with APEX11 in the URL
What's actually happening
APEX is performing the substitutions but not the Discovery URL
When debugging on LEVEL9 this is what I see

I see that
- The default authentication has been correctly overridden with KEYCLOAK
- The substitutions, including the APEX11 discovery URL has been extracted from the procedure
- The default credential has been correctly overridden with KEYCLOAK
- No attempt has been made to override the discovery URL
I can use the procedure to switch from the (default) authentication scheme KEYCLOAK to NONE. This swtiching works fine. However I an unable to switch the DISCOVERY_URL
Please could you advise