Skip to Main Content

APEX

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Push Notifications ACL Settings

Hello, i'm trying to test push notifications on my cloud database. I'm getting ‘ORA-24247: network access denied by access control list (ACL)’ this error. I faced with this issue before, when i try to call an api. But i always can handle with this issue easily by creating ACL with the host and some connect,resolve privileges assigned to related user. But this time it is not working.

Let me share my code. I get this code from 'https://apex.oracle.com/pls/apex/r/apex_pm/apex-pwa-reference/push-notifications' i gave the privileges to WKSP_SCHEMA (my apex schema with my application in it) & APEX_230100.

Please help me about this. Anything could be useful in that special case.

Code →

declare
	l_principal varchar2(20) := 'APEX_230100'; -- Replace with current APEX user
	l_hosts apex_t_varchar2 := apex_t_varchar2(
								'*.push.apple.com',
								'*.notify.windows.com',
								'updates.push.services.mozilla.com',
								'android.googleapis.com',
								'fcm.googleapis.com' );
	begin
		for j in ( select column_value as hostname from table(l_hosts) ) loop
			dbms_network_acl_admin.append_host_ace (
				host => j.hostname,
				lower_port => 443,
				upper_port => 443,
				ace => xs$ace_type(
				privilege_list => xs$name_list('connect'),
				principal_name => l_principal,
				principal_type => xs_acl.ptype_db) );

			dbms_network_acl_admin.append_host_ace (
				host => j.hostname,
				ace => xs$ace_type(
				privilege_list => xs$name_list('resolve'),
				principal_name => l_principal,
				principal_type => xs_acl.ptype_db) );

			dbms_network_acl_admin.append_host_ace (
				host => j.hostname,
				lower_port => 443,
				upper_port => 443,
				ace => xs$ace_type(
				privilege_list => xs$name_list('http'),
				principal_name => l_principal,
				principal_type => xs_acl.ptype_db) );
		end loop;
	end;
This post has been answered by Steve Muench-Oracle on May 29 2023
Jump to Answer
Comments
Post Details
Added on May 28 2023
2 comments
829 views