2014-10-26 17 views
16

Có cách nào đơn giản để chia sẻ dữ liệu cá nhân giữa hai hoặc nhiều người dùng bằng CloudKit không?Chia sẻ dữ liệu cá nhân bằng CloudKit

Ngày công khai và riêng tư là hiển nhiên, nhưng dường như không có cách nào để cho phép một nhóm người dùng tổ chức silo riêng để chia sẻ dữ liệu mà không cung cấp cho tất cả người dùng khác của hệ thống và cho nhà phát triển ứng dụng.

Tôi có một ứng dụng cộng tác học tập trong tâm trí nhưng ví dụ đơn giản nhất sẽ là nhắn tin riêng tư giữa hai người dùng.

Tôi đoán người ta có thể cố gắng xây dựng một hệ thống mã hóa khóa công khai trên CloudKit để đạt được điều đó, nhưng đó không phải là những gì tôi đang tìm kiếm và sẽ vượt quá hai người dùng cho mỗi nhóm.

+0

Public Key (mã hóa bất đối xứng) không quy mô tốt, chỉ có một chìa khóa là cần thiết cho mỗi người dùng. Có điểm trung tâm để có được công chúng của mỗi người dùng theo yêu cầu. Mã hóa khóa đối xứng không quy mô bởi vì nó yêu cầu một khóa cho mỗi kết nối tiềm năng, đó là mỗi người dùng sẽ có một khóa đối xứng với mỗi người dùng khác. Tất cả bảo mật đi kèm với một chi phí. – zaph

+0

Để làm rõ, tôi có nghĩa là nó không có quy mô tốt nếu người dùng cố gắng chia sẻ dữ liệu với nhiều người dùng khác (ví dụ: trò chuyện nhóm với năm người dùng khác) vì người dùng gửi tin nhắn sẽ cần mã hóa nó bằng khóa công khai của mỗi thành viên nhóm khác và năm bản sao được mã hóa cần phải được lưu trữ cho mỗi thư được chia sẻ trong nhóm. – hashemi

+1

[Brent Simmons viết blog về điều này và nghĩ rằng nó là không thể.] (Http://inessential.com/2014/07/28/setting_expectations_about_cloudkit) – hashemi

Trả lời

0

Về mặt kỹ thuật, bạn có thể chia sẻ dữ liệu cá nhân giữa hai người dùng của chúng tôi với CloudKit. Mặc dù kho dữ liệu được công khai, điều này không có nghĩa là mỗi người dùng đều có quyền truy cập vào toàn bộ cửa hàng công cộng. Thiết kế của bạn có thể kiểm soát quyền truy cập vào các phần của cơ sở dữ liệu công khai trong mỗi cá thể ứng dụng.

Bằng cách phát triển ứng dụng sử dụng cơ sở dữ liệu công cộng với số nhận dạng duy nhất cho nhóm người dùng và vùng sử dụng CKRecordZoneNotification để quản lý thông báo, bạn có thể tạo giải pháp an toàn hợp lý. Bạn quyết định phương thức an toàn hợp lý có nghĩa là gì.

Dưới đây là một liên kết đến tài liệu của Apple cho CKRecordZoneNotification

+1

Chúng tôi không đồng ý về những gì được coi là an toàn hợp lý. Điều này về cơ bản là an ninh bởi sự tối tăm. Bất kỳ ai cũng có thể bỏ qua ứng dụng và truy cập trực tiếp vào kho dữ liệu nếu chúng được thúc đẩy đủ để muốn dữ liệu. – hashemi

+0

Tôi đã không được đưa vào cơ chế xác thực của CloutKit vì vậy tôi không thể nói nếu chỉ SBO này. Có thực sự là tầm thường mà 'bất cứ ai' có thể bỏ qua một ứng dụng? – bitsand

+4

Khu vực không hoạt động với db công khai. – Shmidt

0

Sử dụng cơ sở dữ liệu công cộng và mã hóa các nội dung chia sẻ sẽ làm việc. Có thể không quá vui vẻ bởi vì sau đó bạn sẽ cần phải chia sẻ các khóa mã hóa.

5

Tại WWDC 2016, Apple giới thiệu CKShare giải quyết trường hợp sử dụng này. Kể từ ngày 13 tháng 6 năm 2016, API beta là công khai nhưng không có giấy tờ. API chia sẻ được thể hiện trong video WWDC 2016 What's new with CloudKit, bắt đầu từ 19:57.

Các vấn đề liên quan