के साथ oracle utl_http से https://www.facebook.com पर कॉल करना हम ऑरैकल 12.1.0.1.0 का उपयोग कर रहे हैं।वाइल्डकार्ड प्रमाणपत्र
हम बिना किसी समस्या के कई सेवाओं में utl_http के माध्यम से https कॉल जारी कर रहे हैं। हम वर्षों से ऐसा कर रहे हैं और हम इसका उपयोग फेसबुक प्रमाणीकरण के लिए भी कर रहे हैं।
हाल ही में, हमें https.com में facebook.com urls को कॉल करने के साथ एक समस्या का सामना करना पड़ रहा है जिसे हम हल नहीं कर सकते हैं। ऐसा लगता है कि * .facebook.com पर प्रमाणपत्रों का उपयोग करने के लिए फेसबुक के स्विच के साथ मेल खाता है। हालांकि मैं यह कहने में संकोच करता हूं कि यही कारण है, यह संबंधित हो सकता है। बस आपको समय बचाने के लिए, हम नेटवर्क एसीएल अनुदान के साथ अच्छे हैं और प्रमाण पत्र सत्यापन त्रुटियां नहीं हैं।
त्रुटि कोड हम इसे समस्या प्राप्त करने पर हम पाते है:
ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1130
ORA-28750: unknown error
ORA-06512: at "SYS.UTL_HTTP", line 1130
PL/SQL लाइन है कि utl_http.begin_request मुद्दों पर त्रुटि ocurs।
मेरा प्रश्न है: क्या कोई इस समस्या को डुप्लिकेट कर सकता है? क्या कोई वहां गया है और समाधान मिला है? किसी भी इनपुट की सराहना की है।
मैं दो उदाहरणों सहित हूं: एक redhat.com डोमेन पर कॉल है जो ठीक काम करता है। दूसरा फेसबुक.com डोमेन पर कॉल है जिसमें उपर्युक्त समस्या है। इस्तेमाल किए गए कोड दोनों मामलों में समान है। दोनों डोमेन * .domain पर प्रमाण पत्र का उपयोग करते हैं।
लक्ष्य पेज: https://www.redhat.com/en/about
- redhat पेज
GTE CyberTrus Global Root
Baltimore CyberTrust Root <=== rh_01.crt
Cybertrust Public SureServer SV CA <=== rh_02.crt
*.redhat.com
के लिए प्रमाणपत्र श्रृंखला - बटुआ प्रमाण पत्र तीर से चिह्नित हैं। हम * .redhat.com प्रमाण पत्र शामिल नहीं करते हैं क्योंकि केवल भरोसेमंद प्रमाण पत्र वॉलेट में जाने जाते हैं।
- यहां बताया गया है कि redhat.com के लिए वॉलेट कैसे बनाया गया था।
orapki wallet create -wallet /dir1/rh -pwd walletpassword -auto_login
orapki wallet add -wallet /dir1/rh -trusted_cert -cert "/dir1/rh/rh_01.crt" -pwd walletpassword
orapki wallet add -wallet /dir1/rh -trusted_cert -cert "/dir1/rh/rh_02.crt" -pwd walletpassword
- यहां वह कोड है जो https कॉल करता है।
declare
wrequest utl_http.req;
wwallet_location varchar2(400) := 'file:/dir1/rh';
wwallet_password varchar2(400) := 'walletpassword';
wurl varchar2(400) := 'https://www.redhat.com/en/about';
begin
utl_http.set_wallet(wwallet_location, wwallet_password);
wrequest := utl_http.begin_request(wurl, 'GET', utl_http.http_version_1_1);
end;
- यह ठीक काम करता है
================================== ============= यहां वही सेटअप है जो फेसबुक पेज को कॉल करने में विफल रहता है।
लक्ष्य पेज: https://www.facebook.com/login/identify?ctx=recover
- फेसबुक पेज
GTE CyberTrus Global Root
Baltimore CyberTrust Root <=== fc01_.crt
Digicert High Assurance EV Root CA <=== fc02_.crt
Digicert High Assurance CA-3 <=== fc03_.crt
*.facebook.com
के लिए प्रमाणपत्र श्रृंखला - बटुआ प्रमाण पत्र तीर
द्वारा चिह्नित होता है - यहाँ है कैसे के लिए बटुआ फेसबुक बनाया गया था।
orapki wallet create -wallet /dir1/fc -pwd walletpassword -auto_login
orapki wallet add -wallet /dir1/fc -trusted_cert -cert "/dir1/fc/fc_01.crt" -pwd walletpassword
orapki wallet add -wallet /dir1/fc -trusted_cert -cert "/dir1/fc/fc_02.crt" -pwd walletpassword
orapki wallet add -wallet /dir1/fc -trusted_cert -cert "/dir1/fc/fc_03.crt" -pwd walletpassword
- यहां वह कोड है जो https कॉल करता है।
declare
wrequest utl_http.req;
wwallet_location varchar2(400) := 'file:/dir1/fc';
wwallet_password varchar2(400) := 'walletpassword';
wurl varchar2(400) := 'https://www.facebook.com/login/identify?ctx=recover';
begin
utl_http.set_wallet(wwallet_location, wwallet_password);
wrequest := utl_http.begin_request(wurl, 'GET', utl_http.http_version_1_1);
end;
- यह कोड त्रुटि
ORA-29273: HTTP request failed
ORA-06512: at "SYS.UTL_HTTP", line 1130
ORA-28750: unknown error
ORA-06512: at "SYS.UTL_HTTP", line 1130
आपको यह त्रुटि नकल कर सकते हैं दे सकता है? या यह सिर्फ मैं हूं? अग्रिम धन्यवाद।
मुझे कुछ अन्य सेवा के साथ एक ही समस्या है ... –
मुझे 11.1.0.7 के साथ कुछ समस्या थी लेकिन 11.2.0.4 के साथ काम कर रहा था। आपके पास डीबी का भी नया संस्करण है, इसलिए यह बहुत अजीब क्यों है कि यह काम नहीं कर रहा है। ओरेकल के लिए पुराने डीबी संस्करणों के लिए पैच है लेकिन शायद आपकी समस्या से संबंधित नहीं है: पैच 12927177: ओआरएल-एचएचटीपी ओआरए -28750 के साथ असफलता: एसएसएल एक्सेस –
पर अज्ञात त्रुटि क्या आपने अपने डेटाबेस सर्वर के खोल से wget और curl का उपयोग करके यूआरएल पर हमला करने का प्रयास किया है? हमारे पास एक समान ध्वनि समस्या थी (हल नहीं किया गया) लेकिन हमने कम से कम साबित किया कि समस्या ओएस परत पर मौजूद थी और वास्तव में ओरेकल के भीतर नहीं थी। – Ben