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

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

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

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

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

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

Короткий ответ: ДА!

CloudKit Sharing был представлен на WWDC 2016. В разделе «Что нового в CloudKit» есть большой обзор: https://developer.apple.com/videos/play/wwdc2016/226/

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

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

Вот ссылка на документы Apple для CKRecordZoneNotification

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

  • viewDidload viewController, вызванный до метода appDelegate
  • Как создать boost 1.56.0 boost :: context для iphone (ARM)
  • dyld: Символ не найден: _NSURLSessionTransferSizeUnknown AFNetworking 2.1.0
  • как группировать данные по дням с данными ядра?
  • CocoaPods «Pods.xcconfig» конфликтует с существующими
  • В чем разница между mach_vm_allocate и vm_allocate?
  • Как создать настраиваемое исключение в объекте c?
  • iOS ipa codeign на XCode 6.1 и Yosemite
  • iOS Эквивалент SecTransformRef?
  • Есть ли способ получить уведомление / обратный вызов, если параметры сетевого прокси меняются в OSX / iOS?
  • Что точно рандомизировано с ASLR в MacOS X и iOS
  • Interesting Posts

    iOS – Как получить миниатюру с видео без игры?

    Разрешено ли пользователям запрашивать данные кредитной карты для собственного способа оплаты?

    Как нарисовать текст в Xamarin iOS?

    делегат для объекта singleton

    Преобразование в Swift 3 с Xcode 8

    Ориентация вертикального выравнивания панели вкладок iOS 5

    uitableview скрывает 2 ячейки из прокрутки

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

    Какова связь между шрифтом Glyph Ascender и Descender в iOS?

    В ObjectiveC, используя делегат, как отправить сообщение без использования UIButton?

    UITextFieldDelegate vs UITextField управляет событиями

    Меню Swipeout не работает во время использования библиотеки SWReveal

    Xcode 6.1: Множество методов с именем «count» найдено с несогласованным результатом, типом параметра или атрибутами

    Невозможно изменить название UIButton после setAttributedTitle для него

    Сессия iOS Facebook SDK 4

    Давайте будем гением компьютера.