'If I create an ACL using sys as sysdba for APEX_210200 does the ACL apply to sys

Following this guide

https://oracle-base.com/articles/misc/azure-ad-authentication-for-oracle-apex-applications#add-web-credentials

So running this

  l_username varchar2(30) := 'APEX_210200';
begin
  dbms_network_acl_admin.append_host_ace(
    host => 'login.microsoftonline.com',
    lower_port => 443,
    ace  =>  xs$ace_type(privilege_list => xs$name_list('connect'),
                        principal_name => l_username,
                        principal_type => xs_acl.ptype_db));

And then I try to test it with

l_json    CLOB;
BEGIN
apex_web_service.g_request_headers( 1 ).name  := 'User-Agent';
apex_web_service.g_request_headers( 1 ).value := 'Application Express';
l_json := apex_web_service.make_rest_request(
  p_url => 'login.microsoftonline.com',
  p_http_method => 'GET'
);
DBMS_OUTPUT.put_line('l_clob=' || l_json);
END;

But I get

ORA-06512: at "APEX_210200.WWV_FLOW_WEB_SERVICES", line 1182
ORA-06512: at "APEX_210200.WWV_FLOW_WEB_SERVICES", line 782
ORA-24247: network access denied by access control list (ACL)

But the web credentials + Authentication Schemes does work from within the APEX APP itself (logging into Azure and returning to the app)

Does my test fail because I'm running as sys?



Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source