Обмен частными данными с помощью CloudKit

Есть ли простой способ совместного использования частных данных между двумя или более пользователями с помощью CloudKit?

Публичная и закрытая дата очевидны, но, похоже, нет возможности разрешить группе пользователей организовывать собственный силос для обмена данными между собой, не предоставляя его всем другим пользователям системы и разработчик приложения.

У меня есть приложение для академического сотрудничества, но самым простым примером может быть частная передача сообщений между двумя пользователями.

Я предполагаю, что можно попытаться создать систему шифрования с открытым ключом поверх CloudKit, чтобы добиться этого, но это не то, что я ищу, и будет плохо масштабироваться за пределами двух пользователей в каждой группе.

Ответы

Ответ 1

В WWDC 2016 Apple представила CKShare, в котором рассматривается этот прецедент. По состоянию на 13 июня 2016 года бета-API является общедоступным, но недокументированным. API совместного использования демонстрируется в видео WWDC 2016 Что нового в CloudKit, начиная с 19:57.

Ответ 3

Технически да, вы можете делиться частными данными между двумя нашими больше пользователями с CloudKit. Хотя хранилище данных является общедоступным, это не означает, что каждый пользователь имеет доступ ко всему хранилищу. Ваш проект может контролировать доступ к частям публичной базы данных в каждом экземпляре приложения.

Разрабатывая приложение, которое использует общедоступную базу данных с уникальными идентификаторами для групп пользователей, и зоны, использующие CKRecordZoneNotification для управления уведомлениями, вы должны иметь возможность создать достаточно безопасное решение. Вы решаете, что разумно безопасно.

Здесь ссылка на Apple docs для CKRecordZoneNotification

Ответ 4

Использование общедоступной базы данных и шифрование общего содержимого будут работать. Может быть, не слишком весело, потому что тогда вам нужно будет делиться ключами шифрования.