למה לא כותבים את הסיסמה על הדלת
איך שומרים סודות (סיסמאות, מפתחות) בלי לשים אותם בקוד עצמו.
בניתם אפליקציה, הכל עובד מעולה — אבל איפה שמתם את מפתחות ה-API שלכם? יש לכם דירה, יש מנעול, ואתם יודעים את הקוד. האם הייתם כותבים את קוד המנעול על הדלת? ברור שלא. וזה בדיוק מה שקורה כששמים מפתחות API ישירות בקוד.
העליתם קוד ל-GitHub ציבורי? יש בוטים שסורקים את GitHub, מוצאים מפתחות API וגונבים אותם — פורצים למסדי הנתונים שלכם ומבזבזים מאות אלפי דולרים על קריאות למודלים. וגם ב-repo פרטי: ב-GitHub רואים היסטוריה. גם אם מחקתם את המפתח, הוא עדיין שם בהיסטוריה — חייבים להחליף אותו.
במקום לכתוב את המפתח בקוד, כותבים אותו לקובץ .env שנשאר אצלכם במחשב ולא עולה ל-GitHub. מוסיפים אותו ל-.gitignore — קובץ שאומר לגיט "התעלם מהקבצים האלה". וב-production מגדירים את המשתנים בפלטפורמה עצמה (Vercel, Netlify וכו'), במקום שמיועד למפתחות API.
טיפ: ודאו שהמפתחות לא נחשפים ב-frontend ויושבים רק בשרת מאובטח. הרבה אנשים נופלים פה וקמים בבוקר עם חשבון של 10,000 דולר.
"מפתח API בתוך הקוד זה קוד המנעול שכתוב על הדלת. וגם אם מחקתם אותו אחר כך — ההיסטוריה זוכרת."