oracle 尝试测试HTTP连接时出现“ORA-53203:安全违规”

w1jd8yoj  于 2023-11-17  发布在  Oracle
关注(0)|答案(1)|浏览(202)

我一直在尝试让Oracle调用REST API。在设置和运行过程中,我们遇到了一个问题,我们的代码生成了ORA-53203:安全违规。在隔离问题的过程中,我们设置了一个过程来测试连接,这也生成了相同的错误。
我们正在使用Oracle 12 c,并且我们已经为我们正在测试的主机设置了ACE/ACL条目,用于“连接”和“解析”权限。

create or replace procedure showTitleTag ( i_url in varchar2 )
AS
    l_httpreq   UTL_HTTP.req;
    l_httpresp  UTL_HTTP.resp;
    l_text      varchar2(32767);
    l_response  CLOB;
    l_title     varchar2(32767);
BEGIN

    l_httpreq   := UTL_HTTP.begin_request(i_url);
    l_httpresp  := UTL_HTTP.get_response(l_httpreq);

    BEGIN
        LOOP
            UTL_HTTP.read_text(l_httpresp, l_text, 32766);
            l_response := l_response || l_text;
        END LOOP;
    EXCEPTION
        WHEN UTL_HTTP.end_of_body THEN
            UTL_HTTP.end_response(l_httpresp);
    END;

    l_title := REGEXP_REPLACE(l_response, '.*<title> ?(.+) ?</title>.*', '\1', 1, 1, 'in');
    DBMS_OUTPUT.put_line(l_title);

EXCEPTION
    WHEN OTHERS THEN
        UTL_HTTP.end_response(l_httpresp);
        RAISE;
END;

字符串
这段代码,应该给予我们网页标题标签的内容(我们使用“http://www.redhat.com“作为我们的测试URL)。相反,我们收到以下错误:

ORA-29273: HTTP request failed
ORA-53203: security violation
ORA-06512: at "APPS.SHOWTITLETAG", line 29
ORA-06512: at line 1

zf9nrax1

zf9nrax11#

1.你需要确保the related access control list (ACL) assigned and the right privilege has been granted to your target host.
1.如果第一个没有问题,
select a.lower_port, a.upper_port from dba_network_acls a where a.host like '%i_url%'
是否为URL的端口定义了间隔,并包含目标主机的端口。

相关问题