אזהרה חמורה: לא להעלות API Key ל־GitHub!

שימו לב, הערה חשובה מאוד: ה־API Key שקול לסיסמה, והרבה פעמים אפילו קצת יותר רגיש – הוא מכיל גישה לחשבון שלכם ולפעמים מאפשר לעקוף הגנה מרובת שלבים.

לכן:

  1. לא משתפים API Key עם אף אחד.
  2. לא עושים commit־ים לקוד עם API Key, ובטח שלא מעלים אותו לשירותי Git כמו GitHub/GitLab.
  3. לא מצלמים מסך עם API Keys בתוכו.
  4. לא נותנים לאף אחד את ה־API Key שלכם, גם אם זה איש שירות מטעם החברה והוא מבקש אותו.

למה?

  1. יש דברים שסורקים את API Keys באינטרנט כל הזמן כדי להשתמש בהם.
  2. אפשר בעזרת קצת מניפולציות לפרוץ לכם לחשבון, ובמקרים חריגים גם לגלות את הסיסמה שלכם ופרטים נוספים עליכם.

אז איך כן?

  1. משתמשים במשתנה סביבה, שמים בו את הערך ומשיגים את הערך בעזרת os.getenv.
  2. מוודאים כמה וכמה פעמים לפני כל commit שאין את ה־API Key בחשבון.
  3. המקום היחיד שבו אמור לשבת ה־API Key: אצלכם, ובשרת שבו מאוחסן האתר.

מה עושים אם בטעות כבר העלתי API Key שלי לרשת?

  1. למחוק אותו מה־repo לא יעזור. אפשר לראות היסטוריית commit־ים ובסופו של דבר יגיעו אליו.
  2. כנסו לשרות, וחפשו כפתור של revoke API key.
  3. שנו את הסיסמה לחשבון.
  4. נקו את הקוד שלכם מהתייחסות ל־API Key באופן יסודי.

בהצלחה!

7 לייקים

נפלתי בנושא הזה.
עכשיו סידרתי והגדרתי משתנה מחלקה ששואפים את המידע שלהם מקובץ .env כאשר גיט מתעלם ממנו.

כאשר אני על הסביבת עבודה זה עובד ואין בעיה.
אולם אם אני נכנס מהרוקו עכשיו הוא לא נותן לי.

הוא מציע לעשות שימוש בספריה boto כך:

אולם אין זה מצליח.
מישהו עשה בשיטה הזו וחי כדי לספר ? :slight_smile:

או לכל היותר יודע להמליץ על שיטה אחרת נוחה.

לא הבנתי מה הסעיף הזה אומר.
KEY = os.getenv(‘KEY’) לא טוב?

באותה הזדמנות, אשמח אם תוכל למחוק את אותו קובץ גם בוורסיה הראשונה של מערכת ההגשות :frowning:

היי בטעות העלתי אותו לgit אבל עוד לא לgithub, מה אני צריכה לעשות?

למחוק את תיקיית .git ולעשות git init יספיק.
מחקי את ה¯API לפני שאת עושה commit/add

לייק 1

היי.
מתזכר ומחזק: גם לא סיסמאות או שמות משתמשים או URL שכולל אותם ל־DB.

אם בטעות העלתם:

  1. מחקו את ה־DB.
  2. שנו סיסמה ל־Heroku.

אם העלתי ישירות להירוקו ולא לgithub זה אותה סכנה?

לייק 1

פחות, אבל עדיין נניח לא הייתי מעלה את הפרטים הללו למערכת התרגילים