В macOS 16 появится защита буфера обмена — как на iPhone

Apple готовит серьёзное обновление приватности в macOS 16: теперь приложения больше не смогут тихо считывать данные из буфера обмена без ведома пользователя. Эта функция уже давно работает в iOS, и теперь она появится и на компьютерах Mac.
Что меняется в macOS 16
Сегодня любое приложение в macOS может без запроса прочитать содержимое буфера обмена (Pasteboard) — даже если пользователь этого не подозревает. Это удобно для автоматизации, но крайне уязвимо с точки зрения приватности.
С выходом macOS 16 система начнёт показывать уведомления, когда приложение пытается получить доступ к буферу обмена без прямого действия пользователя. Это аналог функции, впервые появившейся в iOS 14.
Новый API и режимы доступа
Apple уже обновила документацию AppKit для разработчиков и добавила новые API в NSPasteboard
и NSPasteboardItem
. Теперь приложения смогут:
- Проверять наличие типов данных в буфере обмена, не считывая сами данные (и не вызывая предупреждение);
- Настроить корректную реакцию системы на действия пользователя (например, при нажатии кнопки «вставить»).
Кроме того, пользователи смогут управлять доступом к буферу обмена для каждого приложения отдельно:
- Разрешить всегда
- Запрашивать доступ каждый раз
- Полностью заблокировать
Это создаст прозрачную и управляемую систему работы с чувствительной информацией: паролями, адресами, номерами карт и т.д.
Что говорит Apple
«Готовьте приложение к предстоящему обновлению в macOS, при котором система будет оповещать пользователя о попытках программного доступа к буферу обмена. Уведомление появится, если обращение не связано с прямым действием в интерфейсе, которое считается контекстом вставки», — говорится в документации Apple.
Разработчики уже могут протестировать новые функции, установив бета-версию macOS 16 и включив соответствующие настройки.
Что будет с менеджерами буфера обмена?
Apple пока не уточнила, как нововведения скажутся на сторонних менеджерах буфера обмена, которые активно читают данные в фоновом режиме. Скорее всего, им придётся использовать новый API или получать явное разрешение от пользователя. В противном случае их работа будет ограничена или сопровождаться постоянными предупреждениями.