Представьте два сценария. В первом шифровальщик за несколько минут шифрует сотни файлов на компьютере — договоры, отчеты, таблицы, — и OneDrive добросовестно синхронизирует поврежденные версии в облако. Во втором все файлы удаляют из OneDrive и очищают обе корзины: это делает сотрудник перед увольнением или человек, который знает его пароль. Такое случается чаще, чем принято признавать, а ведь результаты этой работы принадлежат компании.
Готова ли ваша компания к каждому из этих сценариев? Мы проверили — и ответ зависит от того, есть ли у вас копия за пределами OneDrive пользователя.
Коротко
Что OneDrive спас
- ✓Один поврежденный файл — восстановлен из журнала версий без каких-либо потерь.
- ✓Удаленная папка с 58 файлами — вернулась из корзины одним щелчком.
Где не справился
- ✕531 файл поврежден за 2 минуты — OneDrive ни о чем не предупредил и продолжал показывать «синхронизировано».
- ✕Журнал версий восстанавливает файлы по одному — а у некоторых файлов исправной версии не оказалось вовсе. Можно откатить весь OneDrive, но тогда отменится и все, что было сделано после атаки.
- ✕Файлы удалены вместе с обеими корзинами — за 5 щелчков, обычным пользователем, без администратора. Вернуть их уже нечем.
Итог: OneDrive хорошо исправляет отдельные ошибки, но сам по себе не является резервной копией по правилу 3‑2‑1. Схема ниже исправляет это средствами вашего же Microsoft 365.
Раскрытие информации. Мы разрабатываем OneMount — приложение для Windows для работы с SharePoint и OneDrive, которое, помимо прочего, делает резервные копии. Поэтому на первом месте у нас методика и цифры, а там, где OneDrive справился, мы говорим об этом прямо. Половина схемы ниже работает вообще без нашего продукта.
Удалить все файлы вместе с корзинами: пять щелчков
Начнем с худшего случая: человек с доступом к учетной записи — сотрудник накануне увольнения или злоумышленник, узнавший пароль, — удаляет рабочие папки и заметает следы. Мы делали это под обычным тестовым пользователем, а не администратором. Удаленная папка Finance из «Документов» — 39 МБ отчетов и таблиц — попадает в корзину OneDrive, и там же тот же пользователь видит Delete рядом с Restore.
Можно ли стереть ее окончательно, мы проверили на большом файле в 543 МБ — для OneDrive папка с документами и отдельный файл ведут себя одинаково:
- Удалили его в веб-версии OneDrive — он попал в корзину.
- Удалили его из корзины — он переместился в корзину второго этапа.
- Удалили его из корзины второго этапа — и он исчез отовсюду.
Мы увидели Файл исчез навсегда, и одобрение администратора не понадобилось. Причина проста: в собственном OneDrive пользователь — владелец, то есть администратор семейства сайтов. Он может удалить что угодно и очистить обе корзины. То же самое может шифровальщик, запущенный под его учетной записью.
Что остается после этого. Microsoft заявляет Служба поддержки Microsoft может восстановить OneDrive целиком на момент в пределах последних 14 дней — не отдельные файлы, и откат также отменит все изменения, сделанные с тех пор. А если сотрудник уже уволился и его учетную запись удалили, его OneDrive по умолчанию хранится всего 30 дней.
Итак, OneDrive хорошо спасает от случайных ошибок. От намеренного удаления всех файлов он не защищает, потому что все, что у него есть, находится в той же учетной записи. Дальше — что OneDrive действительно умеет, как мы это проверяли и как хранить копию, которую пользователь не сможет стереть.
Синхронизация — не резервное копирование
Большинство споров о том, является ли OneDrive резервной копией, смешивают две разные вещи. Синхронизация как можно быстрее делает все копии одинаковыми — именно это нужно во время работы и именно это вредит в день, когда что-то ломается: повреждение тоже синхронизируется. Резервная копия — это снимок на определенный момент, который последующие изменения не затрагивают.
| Синхронизация (OneDrive) | Резервная копия | |
|---|---|---|
| Что копирует | Текущее состояние, непрерывно | Снимок, по расписанию |
| Удаленный файл | Исчезает везде, затем корзина | Остается во всех более ранних снимках |
| Поврежденный файл | Заменяет исправную копию; старая остается как версия | Более ранние снимки не меняются |
| Сотни файлов сразу | По одному или откат всего OneDrive | Весь набор из одного снимка |
Путаница — не вина пользователей. Windows 11 предлагает «создать резервную копию» рабочего стола, документов и изображений, но на самом деле включает синхронизацию этих папок с OneDrive — часто при настройке нового компьютера, как сообщали PCWorld и Office Watch. Если назвать это резервной копией, принцип работы не изменится.
Что хранит для вас Microsoft: журнал версий, корзина, Restore your OneDrive
Для рабочих и учебных учетных записей (OneDrive для бизнеса и SharePoint Online) — Microsoft заявляет:
| Функция | Что делает | Ограничение |
|---|---|---|
| Журнал версий (Version history) | Предыдущие версии каждого файла, любого типа | 500 версий по умолчанию; в автоматическом режиме — все версии за первые 30 дней, дальше они прореживаются (документация) |
| Корзина (Recycle bin) | Удаленные файлы и папки; второй этап — для владельца сайта | 93 дня с момента удаления; занимает место в хранилище (документация) |
| Restore your OneDrive (восстановление OneDrive) | Откатывает весь OneDrive на определенный момент | 30 дней; опирается на версии и корзину (документация) |
| OneDrive уволенного сотрудника | Хранится после удаления учетной записи | 30 дней по умолчанию (документация) |
| Microsoft 365 Backup | Отдельная платная служба с точками восстановления | До 1 года; $0,15 за ГБ в месяц (документация) |
Это неплохой набор инструментов, и честный ответ — не «OneDrive потеряет ваши файлы». Чтобы облако само повредило файл — такого практически не бывает. Реальный риск — файл, поврежденный вами, приложением на компьютере или злоумышленником, и синхронизация, которая добросовестно передает это повреждение в облако.
Три теста восстановления OneDrive
Отдельная виртуальная машина с Windows 11 и стандартным клиентом OneDrive, тестовая учетная запись без прав администратора (Microsoft 365 Business Standard), рабочий стол и «Документы» перенаправлены в OneDrive, настройки клиента по умолчанию. Набор данных: 263 реалистичных файла (Word, Excel, PDF, PowerPoint, изображения), 188 МБ, сгенерированных скриптом. Перед каждым разрушительным шагом мы фиксировали контрольные суммы SHA-256: файл считается целым, только если он побайтно совпадает с оригиналом.
Тест 1. Поврежденный файл — OneDrive справился
Самый будничный случай: приложение падает во время сохранения или кто-то сохраняет не то содержимое. Мы перезаписали книгу Excel случайными байтами того же размера.
Мы измерили Поврежденная версия попала в облако за считаные секунды (в одном из трех прогонов — за 2 мин 23 с). Восстановление: Проводник → правый щелчок по файлу → OneDrive → Version history → предыдущая версия → Restore. Через 30 секунд — 3 минуты файл на компьютере снова побайтно совпадал с оригиналом.
- Пока компьютер не синхронизируется, файл по-прежнему выглядит поврежденным, хотя копия в облаке уже в порядке. Не восстанавливайте дважды.
- Несколько сохранений подряд могут слиться в одну версию — «каждое сохранение — это версия» не гарантируется.
- Открытие файла в Excel в браузере создает новую версию, даже без правок. Когда ищете исправную версию, смотрите журнал, а не открывайте файлы один за другим.
Тест 2. Удаленная папка — один щелчок
Мы удалили папку с финансовыми документами — 58 файлов, 39,4 МБ — обычной клавишей Delete. Через 10 секунд ее уже не было в облаке. В корзине OneDrive она отображалась одной записью, и Restore за секунды вернул 58 из 58 файлов вместе со структурой папок.
Две мелочи с последствиями. Корзин две: корзина Windows существует только на этом компьютере, поэтому при сломанном или украденном ноутбуке поможет лишь корзина OneDrive. А восстановленные файлы возвращаются как доступные только в сети (Files On-Demand) — без интернета они не откроются.
Тест 3. Повреждено все — и никто не предупредил
Шифровальщик или ошибочный скрипт повреждает не один файл, а все, до чего дотянется. Мы повредили содержимое всего рабочего стола и «Документов» тестового пользователя — включая все, что накопилось за дни тестирования. Имена, папки и размеры остались прежними: на первый взгляд все на месте, пока не попробуешь открыть.
Мы измерили 531 из 532 файлов (~778 МБ) за 123 секунды. Мы увидели OneDrive не показал никакого предупреждения о массовом изменении — только «синхронизировано». Корзина была пуста: ничего ведь не удалялось.
Путь 1 — журнал версий. Там, где исправная версия есть, восстановление работает правильно. Но каждый файл приходится восстанавливать отдельно: открыть, журнал, версия, Restore, следующий. Для сотен файлов это часы одинаковых щелчков.
И исправная версия есть не у каждого файла. Мы увидели У одного текстового документа в журнале была единственная версия — уже поврежденная. Возвращаться было не к чему. Мы нашли его случайно; сколько таких файлов среди 531, вручную проверить невозможно.
Путь 2 — резервная копия рядом с синхронизацией. Синхронизация по своей природе повторяет каждое изменение — полезное или вредное. Поэтому дополнять ее нужно тем, чего у OneDrive нет: регулярным снимком ваших папок, который после создания никто не меняет. Поврежденный сегодня рабочий стол не затрагивает вчерашний снимок, и вместо восстановления сотен файлов по одному вы восстанавливаете состояние на конкретную дату.
Для теста мы использовали функцию резервного копирования в OneMount — нашем приложении, которое дополняет OneDrive, а не заменяет его: по расписанию оно упаковывает папки компьютера в архивы с датой в SharePoint или OneDrive. Мы выбрали копию, сделанную до атаки, и весь рабочий стол вернулся за один шаг в отдельную папку с датой резервной копии в названии. Существующие файлы не перезаписываются, поэтому можно спокойно сравнить и забрать нужное. Тот же принцип работает с любым инструментом резервного копирования — главное, чтобы копия хранилась отдельно от синхронизируемых файлов.
| После массового повреждения | Журнал версий OneDrive | Резервная копия (снимок) |
|---|---|---|
| Действий для 500+ файлов | несколько на каждый файл | одно на всю папку |
| Поиск поврежденного | проверять все | не нужен — возвращается весь снимок |
| Файл без исправной версии | потерян | восстанавливается на момент резервной копии |
Наша интерпретация В OneDrive есть и Restore your OneDrive — откат всего OneDrive на момент до атаки, в пределах 30 дней. При массовом повреждении это сильный встроенный инструмент, если версии целы. Но он откатывает и всю полезную работу, сделанную с тех пор, и не поможет, если вместе с файлами очистили корзины — как в сценарии в начале статьи.
Шифровальщики в 2026 году: почему атаковать OneDrive и SharePoint проще, чем кажется
«С нами такого не случится, это сложно» — самая частая реакция. Но программе-вымогателю не нужно взламывать Microsoft 365. Ей достаточно запуститься в сеансе пользователя — из письма, с флешки или из «удобной» утилиты: с этого момента у нее те же права, что и у человека за клавиатурой. А добраться до облачных файлов она может тремя путями.
- Локально, как классический шифровальщик. Она повреждает файлы на диске, а клиент OneDrive добросовестно загружает поврежденные версии в облако — и в синхронизируемые библиотеки SharePoint тоже. Именно это мы видели в тесте 3: 531 файл за 2 минуты без единого предупреждения.
- Через браузер. Пользователь уже вошел в Microsoft 365, поэтому программа может открыть браузер с его профилем или украсть файлы cookie сеанса и действовать от его имени на всех сайтах, к которым у него есть доступ. Многофакторная проверка подлинности здесь не помогает: она защищает вход, а не уже открытый сеанс.
- Через API. С токеном пользователя достаточно нескольких запросов к SharePoint или Microsoft Graph, чтобы получить список доступных сайтов, перезаписать или удалить файлы и очистить корзины. Без окон и щелчков.
Исследование Еще в 2022 году Proofpoint описала сценарий специально для SharePoint и OneDrive: злоумышленник во взломанной учетной записи снижает лимит версий файла до одной и шифрует файл несколько раз — исправных старых версий не остается. Права администратора не нужны, каждый шаг можно автоматизировать через API и PowerShell, а Microsoft ответила, что функции работают так, как задумано (Proofpoint). Родственную технику кражи сеанса — расширение браузера, которое крадет cookie Entra ID и обходит MFA для Outlook, Teams, SharePoint и OneDrive, — исследователи продемонстрировали в 2025 году под названием Cookie-Bite.
ИИ убрал последний барьер
Раньше для такого скрипта нужен был опытный разработчик. Теперь это может любой, кто способен описать задачу словами. Исследование В августе 2025 года ESET обнаружила PromptLock — первую известную программу-вымогатель, которая сама генерирует скрипты с помощью языковой модели; пока это прототип, а не реальная атака (ESET). В том же месяце Anthropic сообщила о злоумышленнике лишь с базовыми навыками программирования, который с помощью ИИ создавал и продавал готовые программы-вымогатели по $400–1200 за штуку (Anthropic). Вывод простой: все, что мы в этой статье делали вручную, — повреждали сотни файлов, удаляли папки, очищали корзины, — теперь умещается в небольшой скрипт, который может написать кто угодно.
Когда пароль от Windows — это и пароль от Microsoft 365
Во многих компаниях учетные записи синхронизируются из локальной Active Directory в Microsoft Entra ID: в Windows и Microsoft 365 входят с одним и тем же паролем. Удобно — но взломанный компьютер или домен становится ключом и к облаку. Microsoft заявляет В августе 2025 года Microsoft описала атаку группировки Storm-0501: злоумышленники захватили локальную Active Directory и сервер Entra Connect, сбросили пароль синхронизируемой учетной записи с ролью глобального администратора, у которой не было MFA, — и новый пароль синхронизировался в облако. Затем они выгрузили данные, удалили снимки, точки восстановления и резервные копии в Azure и потребовали выкуп через Teams (Microsoft Security Blog). Резервные копии в том же клиенте они уничтожили первыми.
Что из этого следует. Все, что может пользователь, может и программа, работающая от его имени. Поэтому защита держится на двух вещах, которые от пользователя не зависят:
- копия, которую нельзя изменить из его учетной записи, — папка только для добавления из шага 1 ниже;
- копия за пределами клиента — на локальном диске или NAS, вне досягаемости даже для взломанного администратора Microsoft 365.
Плюс гигиена учетных записей: MFA, устойчивая к фишингу, отдельные облачные (не синхронизируемые с AD) учетные записи администраторов и ограниченное время жизни сеанса через условный доступ (Conditional Access).
Почему OneDrive — не резервная копия: правило 3-2-1
Классическое правило резервного копирования 3-2-1: три копии данных, на двух разных типах носителей, и одна из них хранится отдельно от остальных. Современный вариант 3-2-1-1-0 добавляет одну неизменяемую копию и ноль ошибок при проверке восстановления. С одним только OneDrive у вас одна копия, отраженная в нескольких местах: журнал версий и корзина находятся в той же учетной записи. До таких событий они не дотягиваются:
- удалены все файлы и очищены обе корзины — сотрудником перед увольнением или злоумышленником с его паролем;
- взломанная или удаленная учетная запись, отключенная лицензия;
- ошибка администратора или скрипта, которая очищает версии или корзины;
- удаление, замеченное спустя более чем 93 дня.
| Требование 3-2-1 | Только OneDrive | Схема ниже |
|---|---|---|
| 3 копии | Компьютер + зеркало в облаке | Компьютер · OneDrive с журналом версий · отдельная копия по расписанию |
| 2 типа носителей | одна копия — изменения синхронизируются | копия из облака на локальный диск или NAS |
| 1 отдельно | нет — та же учетная запись | отдельный клиент или локальный диск |
| +1 неизменяемая | нет | папка только для добавления: пользователь не может изменить или удалить копию |
Резервное копирование 3-2-1 в Microsoft 365: три шага
Цель: добавить к OneDrive независимую копию по расписанию, которую нельзя стереть из учетной записи пользователя и которая не растет бесконечно. Все средствами вашего же Microsoft 365, без стороннего облака.
Где разместить папку резервных копий. Надежнее всего — отдельный клиент со своим сайтом SharePoint или локальный диск или NAS (копия из облака на компьютер): события в вашем основном клиенте их не затронут. Проще всего — отдельный сайт SharePoint в том же клиенте: он защищает от ошибок и шифровальщиков на компьютерах, но не от событий уровня клиента. Главное — пользователи там не владельцы.
Шаг 1. Папка резервных копий только для добавления в SharePoint
В SharePoint нет встроенного уровня разрешений «можно добавлять, нельзя удалять», но его легко создать. Нужен владелец сайта.
- Уровень разрешений. ⚙ → Site permissions → Advanced permissions settings → Permission Levels →
Contribute → Copy Permission Level. Назовите его
Backup Append-Only. Снимите всего три разрешения: Edit Items, Delete Items, Delete Versions. - Уникальные разрешения для папки. Папка резервных копий → ⋯ → Manage access → Advanced settings → Stop Inheriting Permissions.
- Уберите права на редактирование. Удалите из папки группу участников сайта (Members, Edit) — действующие разрешения суммируются по всем группам, и с Edit пользователь смог бы удалять файлы. Группу владельцев (Owners) оставьте.
- Выдайте право только на добавление. Grant Permissions → группа безопасности с пользователями, чьи резервные копии будут попадать сюда → уровень Backup Append-Only, без письма-приглашения.
Мы увидели Под обычным пользователем загрузка нового архива работает; изменение или удаление существующего возвращает No access; скачивание для восстановления работает.
Это разрешение, а не неизменяемое хранилище: владелец сайта и администратор клиента по-прежнему могут удалять. Оно защищает от ошибок пользователей и шифровальщиков на компьютере, но не от взломанного администратора.
Шаг 2. Ротация резервных копий без корзины
Головная боль, о которой редко пишут: удаленные старые резервные копии попадают в корзину сайта и лежат там до 93 дней, занимая квоту. При ежедневном архиве в 5 ГБ в корзине постоянно лежит около 450 ГБ «удаленных» данных. Вдобавок пользователи из шага 1 удалять не могут — убирать должен кто-то другой.
Решение — поток Power Automate, работающий от имени владельца сайта. Когда в папке появляется новый архив
<Источник> yyyy-MM-dd HHmmss.zip, поток берет архивы того же источника
в той же папке, оставляет N самых новых и безвозвратно удаляет более старые — но
только те, что старше D дней (по умолчанию 7). OneMount складывает копии каждого компьютера в отдельную подпапку,
поэтому «Desktop» с двух компьютеров считается отдельно. Мы измерили Стандартное действие
«Delete file» отправляет файл в корзину; безвозвратное удаление — это запрос DELETE через «Send an HTTP request to SharePoint»:
ни в одной из корзин удаленных архивов не оказалось, а каждый запуск потока занимал около половины секунды.
А если злоумышленник окажется хитрее? Он стирает рабочий стол и «Документы», а затем подряд бросает в папку резервных копий семь пустых архивов. Поток «хранить 7» добросовестно оставит семь самых новых — пустых — и безвозвратно удалит все настоящие резервные копии. Поэтому у потока есть второе условие: ни одна копия не удаляется, пока ей не исполнится D дней, сколько бы новых архивов ни пришло. Дату создания проставляет SharePoint, а пользователь не может менять свойства файлов в папке только для добавления.
Мы смоделировали 20 дней ежедневных резервных копий, а затем семь пустых архивов за минуту: только с правилом N выживает 0 настоящих копий; с минимальным возрастом 7 дней — все 7 копий за последнюю неделю.
Два потока: ротация и очистка заброшенных компьютеров
Срабатывает в течение нескольких минут после каждой новой резервной копии и сразу удаляет лишнюю старую копию в той же папке: оставляет N самых новых и никогда не трогает ничего моложе минимального возраста.
Раз в день. Компьютер сломался, его передали другому человеку, пользователь уволился — резервные копии не приходят, и поток 1 туда никогда не заглянет. После 14 дней без резервных копий остается только последняя копия; через 30 дней после ее создания удаляется и она.
Задайте порог «заброшенности» больше отпуска и самого редкого вашего расписания резервного копирования: компьютер, выключенный на две недели, для потока выглядит точно так же, как сломанный, и его история сократится до одной копии.
Вариант A · Генератор — рекомендуется (10 минут)
Генератор ничего не устанавливает в ваш клиент: он собирает два пакета .zip, которые Power Automate
импортирует как готовые потоки, — manifest.json с названием и описанием и definition.json
со всем потоком, где уже подставлены ваш сайт, библиотека, папка и числа. Ради этого он и существует: пять щелчков
вместо пары десятков полей и выражений.
- Скачайте onemount-retention-flow.zip,
распакуйте и запустите
Create-RetentionFlow.batот имени владельца сайта (в браузере тоже войдите как владелец). - Вставьте ссылку на папку резервных копий из адресной строки — генератор сам определит сайт, библиотеку и папку. На небольшой странице с идентификатором библиотеки нажмите Ctrl+A, Ctrl+C — окно генератора подхватит его.
- Ответьте на два блока вопросов (Enter оставляет значение по умолчанию; у каждого есть подсказка). Рядом со скриптом
появятся
OneMount-1-Rotation-….zip,OneMount-2-Cleanup-….zipиOneMount-IMPORT-STEPS-….txt— шаги импорта с вашими названиями и числами. - Импортируйте каждый пакет: Power Automate → My flows → Import → Import Package (Legacy) → Upload. В строке потока оставьте Create as new; в красной строке SharePoint Connection выберите Select during import → подключение владельца сайта (если его еще нет — + Create; щелкните строку, чтобы появилась ✓) → Save → Import.
- Включите оба потока в My flows — импортированный поток выключен. Поток 1 — Automated, поток 2 — Scheduled. Выключите или удалите старые потоки хранения для той же папки, если они есть.








← прокручивайте в сторону · щелкните снимок, чтобы увеличить →
Проверка работы. Поток 1 срабатывает для архивов, созданных после его включения, с задержкой до
~5 минут (с лицензией Microsoft 365 триггер опрашивает папку примерно с такой частотой): положите новую резервную копию
и проверьте журнал запусков. Успешный запуск без удалений — это нормально, пока копий не больше N или они моложе
минимального возраста. Поток 2 не обязательно ждать до ночи: откройте его → Test → Manually
→ Run flow. Чтобы проверить ротацию, соберите пакеты с параметрами
Create-RetentionFlow.bat -Keep 1 -MinAgeDays 0.
Вариант B · Собрать потоки вручную
Пригодится, чтобы понять, что внутри, или если импорт пакетов в вашей среде заблокирован. Общие правила: вставляйте
выражения через вкладку fx (или Edit in advanced mode в Filter array); называйте действия
точно так, как показано, — выражения ссылаются на них (пробел превращается в _: «Active sources» →
body('Active_sources')). Замените OneMount_BackUP, 7 копий, 7 / 14 / 30 дней и идентификатор библиотеки на свои.
Поток 1 · Ротация Automated cloud flow · 7 шагов
- Триггер — When a file is created (properties only) (SharePoint): выберите Site Address и Library Name из списка, используя подключение владельца сайта.
- Condition, все строки объединены через And; слева — выражение, оператор и значение — как в подписи:
1 · contains →
OneMount_BackUPtriggerOutputs()?['body/{Path}']2 · ends with →.ziptoLower(triggerOutputs()?['body/{FilenameWithExtension}'])3 · is greater or equal to →3length(split(triggerOutputs()?['body/{FilenameWithExtension}'], ' '))4 · is equal to →10(дата в имени)length(first(skip(split(triggerOutputs()?['body/{FilenameWithExtension}'], ' '), max(0, sub(length(split(triggerOutputs()?['body/{FilenameWithExtension}'], ' ')), 2))))) - Ветка True → Compose — имя источника без даты и времени («Desktop 2026-10-20 230000.zip» → «Desktop»):
Inputs
join(take(split(replace(triggerOutputs()?['body/{FilenameWithExtension}'], '.zip', ''), ' '), max(0, sub(length(split(replace(triggerOutputs()?['body/{FilenameWithExtension}'], '.zip', ''), ' ')), 2))), ' ') - Get files (properties only) — тот же сайт и библиотека, Order By:
Created asc; Settings → Pagination On, Threshold5000(без этого поток видит только 100 файлов). - Filter array — From:
body/valueиз Get files; Edit in advanced mode — архивы того же источника в той же папке:Filter query@and(equals(item()?['{Path}'], triggerOutputs()?['body/{Path}']), endsWith(toLower(item()?['{FilenameWithExtension}']), '.zip'), equals(join(take(split(replace(item()?['{FilenameWithExtension}'], '.zip', ''), ' '), max(0, sub(length(split(replace(item()?['{FilenameWithExtension}'], '.zip', ''), ' ')), 2))), ' '), outputs('Compose'))) - Еще один Filter array с именем Filter old enough — за пределами N самых новых и старше минимального возраста:
From · N = 7
take(body('Filter_array'), max(0, sub(length(body('Filter_array')), 7)))Filter query · 7 дней@less(ticks(item()?['Created']), ticks(addDays(utcNow(), -7)))
- Apply to each по
Bodyиз Filter old enough → внутри Send an HTTP request to SharePoint: ваш сайт, MethodDELETE, HeadersIF-MATCH=*— безвозвратное удаление в обход корзины. Идентификатор библиотеки — в адресе страницы Library settings послеList=. Save.Uriconcat('_api/web/lists(guid''<ID библиотеки>'')/items(', item()?['ID'], ')')







← прокручивайте в сторону · щелкните снимок, чтобы увеличить →
Поток 2 · Очистка заброшенных компьютеров Scheduled cloud flow · 9 шагов
- Recurrence: Interval
1, FrequencyDay, ваш часовой пояс, At these hours3, At these minutes0. - Get files (properties only) — сайт и библиотека, Order By:
Created desc(сначала новые — чтобы в большой библиотеке живой компьютер никогда не выглядел заброшенным); Pagination5000. - Filter array с именем Backups — From
body/value; только архивы OneMount в вашей папке:Filter query@and(contains(item()?['{Path}'], 'OneMount_BackUP'), endsWith(toLower(item()?['{FilenameWithExtension}']), '.zip'), greaterOrEquals(length(split(item()?['{FilenameWithExtension}'], ' ')), 3), equals(length(first(skip(split(item()?['{FilenameWithExtension}'], ' '), max(0, sub(length(split(item()?['{FilenameWithExtension}'], ' ')), 2))))), 10)) - Filter array «Recent» — From
Bodyиз Backups; копии за последние 14 дней:Filter query · 14 дней@greater(ticks(item()?['Created']), ticks(addDays(utcNow(), -14)))
- Select «Active sources» — From
Bodyиз Recent; Map в текстовом режиме (кнопка справа от Map) — ключ «папка|источник»:Mapconcat(item()?['{Path}'], '|', join(take(split(replace(item()?['{FilenameWithExtension}'], '.zip', ''), ' '), max(0, sub(length(split(replace(item()?['{FilenameWithExtension}'], '.zip', ''), ' ')), 2))), ' ')) - Compose «Active set» — список без дубликатов:
Inputs
union(body('Active_sources'), body('Active_sources')) - Filter array «Abandoned» — From
Bodyиз Backups; копии неактивных источников:Filter query@not(contains(outputs('Active_set'), concat(item()?['{Path}'], '|', join(take(split(replace(item()?['{FilenameWithExtension}'], '.zip', ''), ' '), max(0, sub(length(split(replace(item()?['{FilenameWithExtension}'], '.zip', ''), ' ')), 2))), ' ')))) - Condition:
length(body('Abandoned'))is greater than0. В ветке True — три действия: Select «Abandoned keys» (From Body из Abandoned, Map — то же выражение, что в шаге 5); Select «Mark newest» — помечает последнюю копию каждого источника; Filter array «To delete» — все, кроме последней копии, и саму последнюю копию, когда ей больше 30 дней:Mark newest · Fromrange(0, length(body('Abandoned')))Mark newest · Map: IDbody('Abandoned')[item()]?['ID']Mark newest · Map: Createdbody('Abandoned')[item()]?['Created']Mark newest · Map: Newestnot(contains(take(body('Abandoned_keys'), item()), body('Abandoned_keys')[item()]))To delete · From Body из Mark newest · Filter query · 30 дней@or(not(item()?['Newest']), less(ticks(item()?['Created']), ticks(addDays(utcNow(), -30))))
- В той же ветке, после To delete, — Apply to each по
Bodyиз To delete с тем же Send an HTTP request to SharePointDELETE, что и в потоке 1. Save.








← прокручивайте в сторону · щелкните снимок, чтобы увеличить →
Цена безвозвратного удаления — корзина больше не страхует от ошибки в самом потоке.
Поэтому оба потока трогают только архивы .zip с датой в имени, считают каждый источник в каждой папке
отдельно и никогда не удаляют ничего моложе минимального возраста. Сначала запустите их на тестовых значениях.
Шаг 3. Резервные копии по расписанию
Шаги 1 и 2 работают с любым инструментом, который кладет в SharePoint архивы с датой. Мы используем OneMount: мастер из четырех шагов — направление, что копировать, куда, как часто.
- Снимки, а не синхронизация. Каждый запуск создает новый архив с датой, в который потом ничего не записывается.
- Работает с папкой только для добавления. OneMount сам проверяет разрешения и отмечает их на карточке резервной копии. Большие архивы идут через OneDrive пользователя и серверное копирование SharePoint — права на добавление достаточно.
- В обе стороны. Папки компьютера — в SharePoint или OneDrive; библиотеки SharePoint — на локальный диск или NAS: копия за пределами Microsoft 365, которой требует правило 3-2-1.
- Восстановление всего набора сразу, прямо из облака; существующие файлы не перезаписываются.
Мы увидели Под обычным пользователем резервная копия рабочего стола в 510,8 МБ попала в папку только для добавления, вторая копия того же дня легла рядом, и пользователь не смог удалить ни один из архивов.
Что копировать: общие библиотеки SharePoint важны не меньше, чем OneDrive
До сих пор речь шла о файлах пользователя. Но в большинстве организаций самые ценные данные хранятся в общих библиотеках сайтов SharePoint: договоры, бухгалтерия, кадровые документы, проекты. Файлы Microsoft Teams — это тоже библиотеки сайтов. И риск там часто выше, чем в личном хранилище:
- один человек — последствия для всего отдела. Участник сайта с правом редактирования может удалить папку, с которой работают десятки коллег, а владелец сайта может еще и очистить обе корзины;
- повреждение распространяется дальше. Файлы, зашифрованные на одном компьютере, синхронизируются в библиотеку, а оттуда — на компьютеры всех, кто ее синхронизирует;
- это замечают поздно. Общая папка «ничья»: пропавшие файлы часто начинают искать, когда в корзине им осталось жить считаные дни.
Поэтому расставляйте приоритеты по тому, во что бизнесу обойдется потеря, а не по тому, где файлы лежат:
| Данные | Приоритет | Как копировать |
|---|---|---|
| Библиотеки отделов: финансы, договоры, кадры, проекты | наивысший | из облака на диск или NAS, ежедневно |
| Файлы Microsoft Teams | высокий | так же — это библиотеки сайтов |
| Рабочий стол и «Документы» компьютера | высокий | с компьютера в папку только для добавления — схема выше |
| OneDrive пользователей | зависит от роли | из облака на диск или NAS; обязательно для ключевых сотрудников |
| Редко меняющиеся архивы | ниже | еженедельно |
OneMount копирует библиотеки сайтов тем же механизмом, что и папки компьютера: направление «Из облака на этот компьютер», снимки с датой по расписанию, восстановление всего набора в отдельную папку. Как встроить это в вашу инфраструктуру — решает администратор. Типичный вариант — выделенный постоянно включенный компьютер или сервер: OneMount, вошедший под учетной записью с правом чтения нужных библиотек, записывает копии на локальный диск или NAS. Такая копия хранится за пределами Microsoft 365 — именно та отдельная копия, которой требует правило 3‑2‑1, — а заданиями и их состоянием можно управлять централизованно.
Можно ли хранить резервные копии в OneDrive пользователя?
Соблазн понятен: у каждого сотрудника уже есть 1 ТБ в OneDrive, а общего хранилища клиента может не хватить на резервные копии рабочих столов по 20–40 ГБ для тысячи человек. Но, как мы видели в начале, пользователь — владелец своего OneDrive, и уровень разрешений «только добавление» там не действует: он может удалить резервную копию вместе с обеими корзинами.
Сдержать его может только политика хранения Microsoft Purview, которую настраивает администратор по соответствию требованиям. Microsoft заявляет Она не мешает удалять файлы или очищать корзины, но перед удалением или изменением сохраняет копию в скрытой библиотеке Preservation Hold library, и ни пользователь, ни шифровальщик не смогут удалить ее оттуда до конца срока (документация). Именно это не дает файлам исчезнуть бесследно — будь то сотрудник перед увольнением или злоумышленник с его паролем.
- Портал Microsoft Purview → Data lifecycle management → Retention policies → New retention policy.
- Расположения — только OneDrive accounts (для пилота — несколько пользователей или группа).
- Retain items for a specific period, например 90 дней; по окончании — Do nothing.
- Применение занимает до 7 дней; проверить состояние можно командой
Get-RetentionCompliancePolicy -DistributionDetail. Библиотека появляется после первого изменения или удаления под действием политики:https://<клиент>-my.sharepoint.com/personal/<пользователь>/PreservationHoldLibrary.
Цена этого варианта. Мы его не тестировали, и вот почему не рекомендуем его как основной:
- политика охватывает весь OneDrive — сохраняется все, что человек изменяет и удаляет;
- место расходуется из собственной квоты пользователя, а каждая удаленная резервная копия занимает его дважды: в корзине и в Preservation Hold library;
- вернуть копию может только администратор;
- это та же учетная запись и тот же клиент — не 3-2-1.
Другой вариант: резервное копирование OneDrive в сетевую папку
Можно пойти и обратным путем: копировать OneDrive пользователя из облака на локальный диск или в сетевую
папку (\\server\share). В мастере OneMount это направление «Из облака на этот компьютер»:
выберите OneDrive, а в качестве назначения — сетевую папку, в которую пользователь может записывать.
Мы увидели Резервная копия легла в сетевую папку архивом — так же, как на обычный диск.
Такая копия хранится за пределами Microsoft 365 — это та самая отдельная копия из правила 3-2-1.
Важная оговорка: копируется то, что есть в облаке. Если OneDrive на чьем-то компьютере давно не синхронизируется (такое бывает и может месяцами оставаться незамеченным), новейших файлов просто нет в облаке — а значит, и в резервной копии. Поэтому этот вариант дополняет резервное копирование с компьютера, а не заменяет его. И помните: кто может записывать в сетевую папку, обычно может из нее и удалять — настройте ее разрешения отдельно.
Наша интерпретация Для компании, которой принадлежат результаты работы сотрудников, самый надежный вариант — резервные копии в отдельном клиенте или на отдельном сайте SharePoint с папкой только для добавления, где пользователи не являются владельцами. Политика Purview для OneDrive — запасной вариант на случай, когда отдельного хранилища нет вообще.
Что такое OneMount
OneMount — специализированное приложение для Windows для работы с SharePoint Online и OneDrive для бизнеса. Оно дополняет OneDrive, а не заменяет его:
- подключает библиотеки SharePoint и OneDrive как диски в Проводнике — с буквой диска, без синхронизации и локальных копий, с совместным редактированием в Office;
- делает резервные копии по расписанию — папки компьютера в SharePoint или OneDrive, а библиотеки SharePoint — на локальный диск, с восстановлением за один шаг;
- управляется централизованно — из портала администратора или через групповую политику, и администратор видит состояние резервного копирования на каждом компьютере.
Без стороннего облака и без регистрации приложения в Azure: ваши данные остаются в вашем Microsoft 365. Как подключить SharePoint как сетевой диск →
Вопросы и ответы: OneDrive и резервные копии
Является ли OneDrive резервной копией?
Не в полном смысле. OneDrive — это синхронизация с хорошими средствами восстановления: в наших тестах отдельные поврежденные и удаленные файлы вернулись побайтно. Но это единственная копия ваших данных в той же учетной записи, поэтому сам по себе он не соответствует правилу 3-2-1, а после массового повреждения восстанавливает файлы по одному.
Может ли сотрудник перед увольнением удалить все свои файлы из OneDrive?
Да. В собственном OneDrive пользователь — владелец: он может удалять файлы и очищать обе корзины. Мы проверили это на файле в 543 МБ — он исчез без какого-либо участия администратора. Защитить результаты работы можно отдельной копией, которую пользователь не контролирует, или политикой хранения Microsoft Purview.
Что будет, если шифровальщик зашифрует все файлы в OneDrive или их удалят вместе с корзиной?
Массовое шифрование OneDrive синхронизирует в облако, как любое другое изменение. Отдельные файлы возвращаются из журнала версий по одному; весь OneDrive можно откатить с помощью Restore your OneDrive на момент до атаки в пределах 30 дней, если вовремя заметить. Удаление с очисткой обеих корзин — хуже: у злоумышленника под учетной записью пользователя те же права, что у владельца OneDrive, отдельные файлы восстановить нельзя, а служба поддержки Microsoft может лишь откатить весь OneDrive в пределах 14 дней. Поэтому нужна копия в месте, откуда эта учетная запись удалить не может.
Сколько хранятся удаленные файлы в корзине OneDrive для бизнеса?
93 дня в корзине (первый и второй этап вместе). То, что удалено из корзины второго этапа, восстановить как отдельные файлы уже нельзя.
Сколько версий файла хранит OneDrive?
По умолчанию 500 на файл. В автоматическом режиме — все версии за первые 30 дней, более старые прореживаются. Журнал версий работает для любого типа файлов — мы восстанавливали и файлы Excel, и PDF.
Можно ли в SharePoint разрешить добавлять файлы, но запретить удалять?
Да: скопируйте уровень разрешений Contribute без Edit Items, Delete Items и Delete Versions, прервите наследование для папки и выдайте новый уровень. Помните, что разрешения из всех групп пользователя суммируются.
Почему хранилище сайта SharePoint заполняется, хотя старые резервные копии удаляются?
Потому что удаленные элементы лежат в корзине сайта до 93 дней и учитываются в квоте. Удаляйте старые резервные копии запросом REST DELETE — он обходит корзину.
Может ли шифровальщик зашифровать файлы в OneDrive и SharePoint?
Да. Программа, запущенная в сеансе пользователя, получает его права: она шифрует файлы на диске, а OneDrive загружает поврежденные версии в облако; или она использует уже открытый сеанс браузера либо токен, чтобы изменять и удалять файлы через API на всех сайтах, доступных пользователю. Если пароль Windows синхронизирован с Microsoft 365, взломанный компьютер или домен открывает и облако. Защищают копия, которую нельзя изменить из учетной записи пользователя, и копия за пределами клиента.
Файловый сервер надежнее, чем OneDrive?
Сам по себе — нет, все зависит от настройки. В Windows Server есть теневые копии общих папок (вкладка «Предыдущие версии»), а NAS, например Synology или QNAP, делают снимки файловой системы. Но это снимки по расписанию — в Windows по умолчанию в 7:00 и 12:00 по будням, до 64 штук, — а не история каждого изменения, как в OneDrive: то, что изменилось между снимками, восстановить нельзя. Плюс: шифровальщик, шифрующий общую папку с компьютера пользователя, не может тронуть снимки на сервере, а на NAS их можно сделать неизменяемыми. Слабые места: злоумышленник с правами администратора на сервере удаляет теневые копии одной командой, а снимки хранятся на том же сервере, поэтому они не являются отдельной копией по правилу 3‑2‑1. Вывод тот же, что и для OneDrive: рядом нужна отдельная резервная копия. А если люди привыкли к букве сетевого диска, сохраните ее с помощью SharePoint, подключенного как диск.
Нужен ли Microsoft 365 Backup, если уже есть OneDrive?
Это штатный выбор, если нужно восстанавливать целые сайты и OneDrive на срок до года назад и есть администратор, который будет этим заниматься. Стоит $0,15 за ГБ в месяц — около $4500 в месяц за 30 ТБ — и не охватывает файлы, которые есть только на компьютерах.
Как OneDrive справляется с действительно большими библиотеками — тест синхронизации 1 000 000 файлов →
Источники
- Microsoft Learn — ограничения журнала версий для библиотек документов и OneDrive.
- Microsoft Learn — планирование хранилища версий (автоматический режим).
- Microsoft — восстановление удаленных файлов и папок в OneDrive.
- Microsoft — Restore your OneDrive (восстановление OneDrive).
- Microsoft Learn — хранение и удаление OneDrive.
- Microsoft Learn — политики хранения для SharePoint и OneDrive.
- Microsoft Learn — действия при атаке программ-вымогателей в SharePoint Online.
- Microsoft Learn — цены на Microsoft 365 Backup.
- Microsoft Security Blog — Storm-0501: от локальной AD к облачному вымогательству (август 2025).
- Proofpoint — шифрование файлов SharePoint и OneDrive через лимит версий (июнь 2022).
- ESET — PromptLock, первая известная программа-вымогатель на базе ИИ (август 2025).
- Anthropic — отчет о злоупотреблениях ИИ, включая разработку программ-вымогателей (август 2025).
- Собственные тесты SkylFlow, 21–23 октября 2026 года: изолированная ВМ, тестовая учетная запись без прав администратора, контрольные суммы SHA-256 и замеры времени для каждого прогона.