1. To Drop ACL

exec DBMS_NETWORK_ACL_ADMIN.DROP_ACL(‘utlmailpkg.xml’);

2. Create and Assign ACL TO DBUSER and Assign it all host.

— BELOW CODE WILL CREATE NETWORK_SERVICES.xml ACL file and REQUESTS DBUSER AS INPUT, TO WHICH ACL ACCESS NEEDS TO BE PROVIDED

BEGIN DBMS_NETWORK_ACL_ADMIN.CREATE_ACL

( acl =>’NETWORK_SERVICES.xml’,

description => ‘ACL Access’,

principal => ‘&&DBUSER’,

is_grant => true,

privilege => ‘connect’);

DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE

( acl => ‘NETWORK_SERVICES.xml’,

principal => ‘&DBUSER’,

is_grant => true,

privilege => ‘resolve’);

DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL

( acl => ‘NETWORK_SERVICES.xml’,

host => ‘*’);

COMMIT;

END;

/

3. Adding ACL privilege to ANOTHER DBUSER

— BELOW CODE WILL REQUEST FOR ANOTHER DBUSER NAME TO WHICH ACL ACCESS NEEDS TO BE PROVIDED

exec DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(acl => ‘NETWORK_SERVICES.xml’, principal => ‘&&ANOTHERDBUSER’, is_grant => true, privilege => ‘connect’);

exec DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(acl => ‘NETWORK_SERVICES.xml’, principal => ‘&ANOTHERDBUSER’, is_grant => true, privilege => ‘resolve’);

4. smtp_out_server parameter settings

alter system set smtp_out_server=’localhost:25′ scope=BOTH;

5. To Test the ACL Access

conn DBUSER/

SQL> select utl_http.request(‘http://www.oracle.com’) from dual;

UTL_HTTP.REQUEST(‘HTTP://WWW.ORACLE.COM’)

——————————————————————————–

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd“>

——————————————————————————–

var ssUrlPrefix = “/us/”; var ssUrlType = “2”; var g_navNode_Path = new Array(); g_navNode_Path[0] = ‘8’; var g_ssSourceNodeId = “8”; var g_ssSourceSiteId = “ocomen”;

UTL_HTTP.REQUEST(‘HTTP://WWW.ORACLE.COM’)

——————————————————————————–

6. it should provide the above result,

if it is failure, then it throws

ORA-24247: network access denied by access control list (ACL)

7. In case you get ORA-29278: SMTP transient error: 421 Service not available.

The error shows that the smtp port (25) is not accessible.

( as per parameter smtp_out_server=localhost:25 )

When you do telnet 25 port , it will throw connection refused error..

[prod@linux dbhome_1]$ telnet localhost 25

Trying 127.0.0.1…telnet: connect to address 127.0.0.1: Connection refused

telnet: Unable to connect to remote host: Connection refused

IF that is the case Then, For linux ,please start sendmail service, from root

[root@linux ~]# service sendmail start

Once it is started you should be able get response from telnet and ORA-29278 error will be recovered

[prod@linux dbhome_1]$ telnet localhost 25

Trying 127.0.0.1…Connected to linux.mydb.com (127.0.0.1).

Escape character is ‘^]’.

220 linux.mydb.com ESMTP Sendmail 8.13.1/8.13.1; Thu, 26 Jan 2012 07:10:21 -0800

UTL_HTTP.REQUEST(‘HTTP://WWW.ORACLE.COM’)

——————————————————————————–

6. it should provide the above result, if it is failure, then it throws

ORA-24247: network access denied by access control list (ACL)

7. In case you get ORA-29278: SMTP transient error: 421 Service not available.

The error shows that the smtp port (25) is not accessible. ( as per parameter smtp_out_server=localhost:25 )

When you do telnet 25 port , it will throw connection refused error.. [prod@linux dbhome_1]$ telnet localhost 25Trying 127.0.0.1…telnet: connect to address 127.0.0.1: Connection refusedtelnet: Unable to connect to remote host: Connection refused

IF that is the case Then, For linux ,please start sendmail service, from root

[root@linux ~]# service sendmail start

Once it is started you should be able get response from telnet and ORA-29278 error will be recovered

[prod@linux dbhome_1]$ telnet localhost 25Trying 127.0.0.1…Connected to linux.mydb.com (127.0.0.1).Escape character is ‘^]’.220 linux.mydb.com ESMTP Sendmail 8.13.1/8.13.1; Thu, 26 Jan 2012 07:10:21 -0800

Recent Posts

Start typing and press Enter to search