ORA-29024: Ошибка проверки сертификата? - PullRequest
0 голосов
/ 28 марта 2020

Я использую Oracle 18 c XE на Windows сервере

Я пытаюсь подключиться к некоторым URL-адресам https. Допустим, Google.com:

URL := 'https://www.google.com/' 
apex_web_service.make_rest_request(p_url => URL, p_http_method => 'GET'); 

Я получаю сообщение об ошибке:

ORA-29273: HTTP request failed
ORA-06512: at "APEX_190200.WWV_FLOW_WEB_SERVICES", line 1283
ORA-06512: at "APEX_190200.WWV_FLOW_WEB_SERVICES", line 924
ORA-29024: Certificate validation failure

Вот шаги, которые я сделал:

  • Я создал кошелек используя Oracle Wallet Manager, я скачал сертификат с Google.com в формате P7B и поместил его в папку кошелька.

enter image description here

  • EXE C UTL_HTTP.set_wallet (': D: \ Oracle \ MyWalletFolder', 'Password');

Но при попытке подключения я ' У меня все еще есть та же проблема:

URL := 'https://www.google.com/' 
apex_web_service.make_rest_request(p_url => URL, p_http_method => 'GET'); 

Может кто-нибудь помочь, пожалуйста?

Спасибо.

1 Ответ

0 голосов
/ 28 марта 2020

2 вещи (+1 в редактировании):

1, Путь к кошельку нуждается в файле: '

EXEC UTL_HTTP.set_wallet('file:D:\Oracle\MyWalletFolder', 'Password');

2, кошелек не должен содержать действительный сертификат, но должен содержать его корни / промежуточные звенья. Oracle выдает ошибки, когда кошелек содержит сертификат конечного домена.

3, я почти уверен, что вызовы отдыха apex будут использовать настройку сертификата из самой конфигурации apex:

begin
APEX_INSTANCE_ADMIN.SET_PARAMETER('WALLET_PATH','file:D:\Oracle\MyWalletFolder');
APEX_INSTANCE_ADMIN.SET_PARAMETER('WALLET_PWD','Password');
APEX_INSTANCE_ADMIN.SET_PARAMETER('MAX_WEBSERVICE_REQUESTS','10000000');
end;
/
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...