Oracle Apex ドキュメント: Oracle Database 12c での接続権限の付与
これは、「Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイド -> アプリケーション・セキュリティの管理」にあります。
DBMS_NETWORK_ACL_ADMIN のプロシージャ CREATE_ACL、ASSIGN_ACL、ADD_PRIVILEGE および CHECK_PRIVILEGE は、Oracle Database 12c では非推奨です。かわりにAPPEND_HOST_ACEを使用することをお薦めします。次の例は、 APEX_050000 データベース・ユーザーに任意のホストへの接続権限を付与する方法を示しています。この例では、Oracle Application ExpressがインストールされているデータベースにSYSDBAロールを指定してSYSとして接続していると想定しています。
BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => '*',
ace => xs$ace_type(privilege_list => xs$name_list('connect'),
principal_name => 'apex_050000',
principal_type => xs_acl.ptype_db));
END;
/
次の例は、ローカル ネットワーク リソースへの特権の少ないアクセスを提供する方法を示しています。この例では、電子メール サーバーやレポート サーバーなど、ローカル ホスト上のサーバーのみへのアクセスを有効にします。
BEGIN
DBMS_NETWORK_ACL_ADMIN.APPEND_HOST_ACE(
host => 'localhost',
ace => xs$ace_type(privilege_list => xs$name_list('connect'),
principal_name => 'apex_050000',
principal_type => xs_acl.ptype_db));
END;
/
それ以外は、データベースで頂点をどのように構成したかによって異なります。cdb で apex を使用しており、apex オブジェクトがリンクされていますか (したがって、すべての db に対して 1 つの apex インストール)、または pdb ごとに異なる apex インストールを使用していますか。私はそれが単一のインストールであると推測しています。私の推測では (私は DBA ではありません)、ルートのユーザーに権限を付与する必要があります。