Ruby open-uri: הגדרת אימות Basic של פרוקסי
השתמשו באפשרות אימות הפרוקסי הייעודית של open-uri בלי לערבב אותה עם פרטי היעד או עם ברירות המחדל של הסביבה.
השתמשו באפשרות ה-Basic הייעודית של open-uri עבור החשבון המתווך:
require 'open-uri'
body = URI.open(
'https://example.com/',
proxy_http_basic_authentication: [
'http://203.0.113.10:8080',
ENV.fetch('PROXY_USER'),
ENV.fetch('PROXY_PASSWORD')
],
open_timeout: 5,
read_timeout: 10
) { |response| response.read }החליפו את נקודת הקצה מהתיעוד וקחו את ערכי החשבון ממקור הסודות המיועד. אל תשימו את הסיסמה בכתובת URL שחריגה או דוח תמיכה עלולים להדפיס מאוחר יותר.
| אפשרות OpenRead | שימוש |
|---|---|
proxy_http_basic_authentication | כתובת הפרוקסי ושם המשתמש/סיסמה הבסיסיים שלו. |
proxy | בחירת פרוקסי בלי האפשרות המאומתת המשולבת; אספקת שתיהן מעוררת שגיאת ארגומנט. |
http_basic_authentication | חשבון שרת היעד. |
proxy: nil | הפכו קריאה זו לישירה למרות ברירות המחדל של הסביבה. |
בלי אפשרות פרוקסי מפורשת, open-uri יכול להשתמש במשתני סביבה של פרוקסי הספציפיים לסכימה. האפשרות המאומתת כבר כוללת את נקודת הקצה שלה; היא אינה זקוקה לערך proxy נוסף.
ממשק זה מטפל באימות Basic של פרוקסי. שירות שדורש מנגנון אחר זקוק ללקוח תואם או לאינטגרציה מאושרת. השאירו את אימות HTTPS פעיל, ואז בדקו סטטוס/תוכן כראוי: התחברות פרוקסי שעובדת אינה מוכיחה שהיעד החזיר את המשאב הצפוי.