ACLs
I am trying to practice our upgrade process on the development server and have ran into something I don't know how to handle.
The Pre-Checks came across ACLs that need to be reconfigured for 11g.
I was going through the Upgrade Guide...the section ...Access Control to Network Utility Packages
I did the following select as requested....
SELECT * FROM DBA_DEPENDENCIES
WHERE referenced_name IN ('UTL_TCP','UTL_SMTP','UTL_MAIL','UTL_HTTP','UTL_
INADDR')
AND owner NOT IN ('SYS','PUBLIC','ORDPLUGINS');
And got something along the lines of ... Sorry don't know how to do formatting in this forum.....
OWNER NAME TYPE
------------------------------ ------------------------------ -----------------
REFERENCED_OWNER
------------------------------
REFERENCED_NAME
----------------------------------------------------------------
REFERENCED_TYPE
-----------------
REFERENCED_LINK_NAME
--------------------------------------------------------------------------------
DEPE
----
AJS AUTO_DELETE FUNCTION
PUBLIC
UTL_HTTP
SYNONYM
HARD
AJS AUTO_INSERT FUNCTION
PUBLIC
UTL_HTTP
SYNONYM
HARD
AJS AUTO_DELETE FUNCTION
AJS
UTL_HTTP
NON-EXISTENT
HARD
AJS AUTO_INSERT FUNCTION
AJS
UTL_HTTP
NON-EXISTENT
HARD
The next part of the guide says....
Prepare post-upgrade scripts now so the scripts will be available for use in the test
environment. This ensures the new access controls are part of your upgrade
testing.
I am cluess how to take this information and make post-upgrade scripts....
Anyone have any ideas? It refers me to another section that has something like...
The following example first looks for any ACL currently assigned to host_name. If
one is found, then the example grants user_name the CONNECT privilege in the ACL
only if that user does not already have it. If no ACL exists for host_name, then the
example creates a new ACL called ACL_name, grants the CONNECT privilege to user_
name, and assigns the ACL to host_name.
DECLARE
acl_path VARCHAR2(4000);
BEGIN
SELECT acl INTO acl_path FROM dba_network_acls
WHERE host = 'host_name' AND lower_port IS NULL AND upper_port IS NULL;
IF DBMS_NETWORK_ACL_ADMIN.CHECK_PRIVILEGE(acl_path,
'user_name','connect') IS NULL THEN
DBMS_NETWORK_ACL_ADMIN.ADD_PRIVILEGE(acl_path,
'user_name', TRUE, 'connect');
END IF;
EXCEPTION
WHEN no_data_found THEN
DBMS_NETWORK_ACL_ADMIN.CREATE_ACL('ACL_name.xml',
'ACL description', 'user_name', TRUE, 'connect');
DBMS_NETWORK_ACL_ADMIN.ASSIGN_ACL('ACL_name.xml','host_name');
END;
COMMIT;
But I don't know how that fits into my output.
Any help would be appreciated.