Закрийте тимчасовий попередній перегляд, поки він не став постійним
Попередній перегляд для рецензії потребує вузького входу, названих рецензентів і відкликання, яке можна перевірити. DNS TTL і слово тимчасовий самі по собі нічого не закривають.
Рецензенту, який не може приєднатися до VPN, потрібне посилання на один день, а до вечора в продуктивного сервісу з'являється публічне ім'я хоста, яке, як нікому не згадується, ніхто не схвалював. Запит був малий; зміна — ні. Тимчасовий попередній перегляд — це новий шлях доступу з аудиторією, обсягом даних і часом завершення. Ставтеся до нього як до будь-якого іншого входу, бо слово тимчасовий нічого не закриває.
Тимчасовий — це строк, а не контроль
Слово тимчасовий описує, як довго щось має існувати, а не те, що обмежує його, поки воно існує. Публічне ім'я хоста без строку дії стає постійним у той момент, коли людина, яка його створила, змінює команду.
Перш ніж щось буде розкрито, власник сервісу та власник безпеки мають схвалити три речі: аудиторію, дані та строк.
Наявне середовище гостьового VPN або рецензії часто простіше, ніж публікація продуктивного сервісу. У нього вже є власник, шлях погодження та процес видалення. Створення нового винятку на один день — це шлях, яким маленький запит стає постійним активом. Почніть із питання, чи може рецензія відбутися всередині чогось, що вже існує.
Публікуйте одну операцію, ніколи не підмережу
Виберіть найменший вхід, який ще підтримує рецензію. Надавайте перевагу тестовій копії з відповідними даними замість продуктивного середовища і автентифікованому фронтенду, що досягає одного приватного джерела, замість будь-якого маршруту підмережі.
Ретранслятору з доступністю VPN не потрібно публікувати цілу приватну підмережу, і тим більше не слід публікувати адміністративний інтерфейс шлюзу.
Назвіть облікові записи, яким дозволено прохід, і дії, які вони можуть виконувати. Обмеження за вихідним IP справді звужує коло тих, хто може підключитися. Але воно не ідентифікує людину, бо публічні адреси спільні й змінюються.
Зберігайте власну авторизацію застосунку або явно довірений вхід, що враховує ідентичність. Захищайте завантаження, API та адміністративні шляхи, а не лише сторінку входу. Фронтенд, що завершує TLS, стає довіреною кінцевою точкою, а приватний маршрут за ним не робить публічного відвідувача учасником VPN. Перевіряйте виключені шляхи так само ретельно, як сторінку входу.
Ідентичність на фронтенді, а не в адресі джерела
Правила щодо вихідного IP корисні для звуження експозиції й марні для доведення, хто такий рецензент. Домашні з'єднання змінюються, мобільні мережі ділять адреси, а колега може бути за тим самим NAT.
Проксі, що знає ідентичність, або власний вхід застосунку дає рішення щодо кожної людини. Саме це уможливлює відкликання згодом, бо можна видалити одну ідентичність, не змінюючи мережу.
Залишайте перевірку сертифікатів увімкненою та блокуйте прямий доступ до джерела. Якщо джерело досі доступне з інтернету, фронтенд — лише прикраса.
Відкличте право та маршрут
Запишіть власника й точний строк у операційній системі, яка вже відстежує доступ. Використовуйте доступ з обмеженням у часі або заплановане видалення там, де платформа це підтримує, і додайте перевірку на випадок збою автоматизації.
У погоджений момент виведіть з експлуатації тимчасовий фронтенд, дозвіл на маршрут і право рецензента через їхніх власників. Наявні сеанси та довготривалі з'єднання потребують окремої обробки, бо видалений маршрут їх не завершує.
Короткий DNS TTL — це не закінчення доступу. Він змінює те, як довго розв'язувач зберігає відповідь. Він не вимикає обліковий запис, не обриває активний сеанс і не закриває порт, який ще слухає.
Кешовані копії — частина тієї самої проблеми. Вимкнення шляху до джерела не повертає файл, який хтось уже зберіг, а спільний кеш може віддавати копії після зникнення ретранслятора. Виберіть політику відповідей і зберігання до початку рецензії.
Переконайтеся, що старий шлях справді зник
Приймання — це новий запит, який зазнає невдачі, плюс звичайний робочий процес VPN, який ще працює. Перевіряйте обидва, бо видалення, що ламає звичайний шлях, не є чистим видаленням.
Ззовні мережі підтвердьте, що і ім'я, і джерело закриті:
dig +short review.example
curl -sSI --max-time 5 https://review.example/
ss -ltnp | grep ':443'
Ведіть вузький запис аудиту про те, що було схвалено, хто міг до цього дістатися і коли це було видалено. Цей запис і є різниця між контрольованим винятком і непоясненим іменем хоста. Тимчасовий попередній перегляд успішний, коли він надає запитану рецензію, а потім перестає її надавати. Зникнення URL з повідомлення в чаті — це не та перевірка.