Wednesday, 29 May 2019

ORA-44416: Invalid ACL: Unresolved principal 'XXXXXX' | Unable to create dictionary in Application.

When trying to give ACL to a user/schema it throws below error


ORA-44416: Invalid ACL: Unresolved principal 'AppLog' |" Unable to create dictionary " error in Application.


CASE 1 :

Connecting to the database AppLog@App22nd_sevm1.
Executing PL/SQL: CALL DBMS_DEBUG_JDWP.CONNECT_TCP( '10.155.30.69', '4000' )
ORA-24247: network access denied by access control list (ACL)
ORA-06512: at "SYS.DBMS_DEBUG_JDWP", line 68
ORA-06512: at line 1
Process exited.
Disconnecting from the database AppLog@App22nd_sevm1.


SOLUTION:

 Execute below piece of code by login as DBA after modifying highlighted details

1.       host ip address (please note that IP address is dynamically changing)
2.       schema name

BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE (
     host => '10.155.30.69',
     lower_port => null,
     upper_port => null,
     ace => xs$ace_type(
           privilege_list => xs$name_list('jdwp'),
           principal_name => 'AppLog',
           principal_type => xs_acl.ptype_db
     )
);
END;
/

To check ACL :

 12c


set lines 750 pqges 200
COLUMN ACL FORMAT A45
COLUMN HOST FORMAT A20
COLUMN PRINCIPAL FORMAT A10
COLUMN PRIVILEGE FORMAT A10
SELECT 
    A.ACL,
    B.HOST,
    B.LOWER_PORT,
    B.UPPER_PORT,
    B.ACE_ORDER,
    B.PRINCIPAL,
    B.PRIVILEGE
FROM DBA_NETWORK_ACL_PRIVILEGES A, DBA_HOST_ACES B
WHERE A.PRINCIPAL=B.PRINCIPAL
AND UPPER(A.PRIVILEGE)=UPPER(B.PRIVILEGE)
ORDER BY HOST,ACE_ORDER;


11g

set lines 750 pages 200
COLUMN acl FORMAT A45
COLUMN principal FORMAT A10

SELECT acl,
       principal,
       privilege,
       is_grant,
       TO_CHAR(start_date, 'DD-MON-YYYY') AS start_date,
       TO_CHAR(end_date, 'DD-MON-YYYY') AS end_date
FROM   dba_network_acl_privileges;



No comments:

Post a Comment