שמירה של יומני VPN: קשרו אותה לאירוע, לא למספר
השמירה נגזרת מהאירוע, מהתוכן ומהמדיניות, ולא ממועד אחיד. מצאו כל עותק, עצרו איסוף מפורט והחזיקו רשומה קצרה.
איש לא שואל באמת כמה זמן לשמור יומן VPN; שואלים לשם מה היומן, והתשובה לכך קובעת את התאריך. שני קבצים יכולים לצאת מאירוע אחד עם תוחלות חיים שונות, והתייחסות אליהם כאל מדיניות אחת יוצרת גם שמירה עודפת וגם אובדן ראיות. ייצוא ניפוי שגיאות שנלכד כשהסיבה הייתה לא ידועה אינו אותו חפץ כמו שורה במאגר ניטור. התחילו מהמטרה, ואז בחרו את התאריך.
ענו על ארבע שאלות לפני שתבחרו תאריך
ארבע שאלות קובעות אם קובץ נשאר: האם האירוע עדיין פתוח, מה מכיל הקובץ, מי צריך לקרוא אותו, ומה דורשת המדיניות החלה. ענו בסדר הזה ותאריך השמירה ייגזר מעצמו. ההיגיון נכנס לטבלה:
| Question | How it moves the answer |
|---|---|
| Incident state | An open investigation justifies a protected original; a closed one rarely does |
| Content | Connection identifiers, internal names and addresses raise the cost of a leak |
| Audience | Who retrieves it, and whether a redacted excerpt would serve them instead |
| Policy floor | The applicable service or organizational rule, which overrides a shorter reasoning |
כל עוד האירוע פתוח, החזיקו עותק מקור מוגן אחד כדי שתוכלו להשוות אירועים או לענות על שאלת תמיכה מאוחר יותר, ותנו לו בעלים ומטרה בכתב. למי שמחוץ לצוות התגובה די בדרך כלל בקטע ערוך וקצר, והרבה יותר קל להגן עליו מאשר על הייצוא המלא. המקור והקטע הם חפצים נפרדים עם קהלים נפרדים, ומיזוגם הוא מה שיוצר גם שמירה עודפת וגם אובדן ראיות. המדיניות קובעת רצפה, ולכן אם היא דורשת זמן ארוך מההיגיון שלכם, המדיניות מנצחת.
סגרו את האירוע ברשומה, לא בייצוא
כתבו בכרטיס רשומה של ארבע שורות: הסימפטום, הלקוח והגרסה, שורת השגיאה האחת שזיהתה אותו, והתיקון. אל תצרפו דבר אחר, כי הייצוא היה בשבילכם והרשומה היא בשביל האדם הבא.
הרשומה גם נוטה יותר להיקרא: הייצוא המלא משרת בעיקר את מי שלכד אותו, והאדם הזה כבר יודע מה קרה. החזיקו את הרשומה במקום שבו יחפשו את האירוע הבא, שבדרך כלל פירושו הכרטיס ולא תיקייה שנקראת על שם תאריך. מספר מקרה יכול לשאת את ההפניה אם הרשומה חייבת להיות ניתנת למעקב בלי לחשוף מזהה חיבור. אם שאלה עדיין פתוחה, המקור נשאר תחת כלל העותק המוגן שלמעלה; ברגע שהרשומה קיימת, כל השאר יכול ללכת.
מצאו כל עותק לפני שתמחקו אחד
הביטו בתיקיית הייצוא, אחר כך ביומן חלון האירוע, אחר כך בצירופי הכרטיס, אחר כך בקטלוג הגיבויים, אחר כך במאגר הניטור. אם אותו מזהה חיבור מופיע במקום חמישי, המלאי היה שגוי. היומן הוא ההפתעה הרגילה, כי הוא המשיך לאסוף בזמן שקראתם את הייצוא.
השתמשו במסלול הסבב והמחיקה הנתמך במקום לנתק קבצים ביד. קובץ שעדיין פתוח שומר על האחסון שלו אחרי שערך הספרייה נעלם, ולכן המחיקה נראית שלמה ואינה מפנה דבר. זהו באג אחסון העוטה תווית פרטיות, והוא אינו ממלא אף אחת משתי המטרות.
עצרו את האיסוף לפני שתאמתו את המחיקה
עצרו את האיסוף המפורט הזמני דרך היישום שבבעלותו, ולא על ידי עריכת קובץ הפלט שלו. הגדרת ניפוי שגיאות שנשכחה ממשיכה לכתוב רשומות חדשות לאחר שהקודמות הוסרו, וכך מבטלת בשקט את העבודה שזה עתה עשיתם. בדקו את רמת התיעוד בפועל ולא את הערך שאתם זוכרים שקבעתם. אחר כך ודאו שמה שנשאר מוגן ושארק האנשים המיועדים יכולים לאחזר אותו.
העיקרון הוא מזעור נתונים: החזיקו את מה שמטרה מוצהרת דורשת, כל עוד היא דורשת אותו, ולא יותר, כפי שמנסחות אותו הנחיות הפרטיות RFC 6973. קובץ שנשמר בלי מטרה הוא התחייבות עם חתימת זמן. ההחלטה שלמה כשאתם יכולים לנקוב בשם הקובץ, במטרתו, בבעליו ובתאריך הסיום שלו.