בפריסות Squid שמשתמשות ב-basic_db_auth, מיקום מסד הנתונים שייך לשם מקור הנתונים DBI של ה-helper. קוד המקור של ה-helper ב-Squid 7 חושף אפשרות --dsn; מנהל ההתקן של MySQL מקבל שדות מארח ופורט:

--dsn "DBI:mysql:database=squid;host=db.example.net;port=3306"

זהו קטע ארגומנטים לקריאה הקיימת של ה-helper, ולא פקודה עצמאית. הוסיפו אותו לפקודת auth_param basic program שכבר מפעילה את ה-helper המותקן. נתיב קובץ ההרצה תלוי בחבילת Squid.

קחו בחשבון גם את שאר התצורה של ה-helper. הערכים --user ו---password שלו פותחים את החיבור למסד הנתונים. אפשרויות הטבלה, עמודת שם המשתמש, עמודת הסיסמה ותבנית הסיסמה מתארות את רשומות חשבון ה-proxy המאוחסנות שם. שינוי מארח מסד הנתונים אינו משנה את הסכימה הזו או את תבנית הסיסמה.

ה-helper מעביר את ה-DSN ואת פרטי ההתחברות של מסד הנתונים אל DBI->connect. לכן מנהל ההתקן המתאים של Perl DBI חייב להיות זמין בסביבת ה-helper, ומסד הנתונים חייב לקבל את החיבור ממארח ה-proxy.

שימוש באפשרות החשופה משאיר את כתובת מסד הנתונים בתצורת הפריסה. אין צורך להחליף את מחרוזת ה-DSN המוגדרת כברירת מחדל בקוד ה-Perl של ה-helper.

מאמרים קשורים