0defb3aa

Обращение в интернет по протоколу https


Наличие бумажника с необходимым сертификатом позволяет устанавливать соединения СУБД с узлами сети по защищенному протоколу HTTPS с помощью пакета UTLHTTP. Для примера рассмотрим адрес . Чтобы обратиться к нему из программы потребуется занести в бумажник сертификат. Сертификат можно извлечь из полученного ранее файла thawte-roots.zip, из каталога Thawte Server Roots. С равным успехом для импорта в бумажник годятся и двоичный файл ThawtePremiumServerCA.cer и содержимое текстового ThawtePremiumServerCA_b64.txt. Импортируем сертификат как и выше, с помощью Wallet Manager и меню Operations — Import Trusted Certificate.

Подготовим текст программы для SQL*Plus: SET SERVEROUTPUT ON

DECLARE req UTL_; resp UTL_; walletdir VARCHAR2 ( 100 ) := 'file:C:\oracle\product\10.2.0\db_1\NETWORK\wallet'; walletpass VARCHAR2 ( 100 ) := 'amicus123';

targeturl VARCHAR2 ( 100 ) := 'https://www.thawte.com';

BEGIN UTL_HTTP.SET_WALLET ( walletdir, walletpass ); req := UTL_HTTP.BEGIN_REQUEST ( targeturl ); resp := UTL_HTTP.GET_RESPONSE ( req ); UTL_HTTP.END_RESPONSE ( resp );

DBMS_OUTPUT.PUT_LINE ( 'HTTP response status code: ' resp.status_code ); DBMS_OUTPUT.PUT_LINE ( 'HTTP response reason: ' resp.reason phrase ); END; /

При наличии приближенного сервера (proxy) потребуется связаться через него (UTL_HTTP.SET_PROXY).

Прогон текста должен дать результат: HTTP response status code: 200

HTTP response reason: OK

Упражнение. Убрать из текста программы обращение к бумажнику (SETWALLET) и проверить доступ к адресам: (а) , (б) .

В созданом средствами Oracle бумажнике имеется несколько предустановленных сертификатов. Один из них готов для установления прямого защищенного соединения по протоколу HTTPS с узлом по адресу .



Содержание раздела