2015-07-12 14 views
9

Có ba vai trò an ninh mặc định trong CloudKit:Vai trò và quyền bảo mật của CloudKit hoạt động như thế nào?

  • Thế giới
  • Authenticated
  • Đấng Tạo Hóa

Và ba quyền:

  • Tạo
  • đọc
  • Viết

Làm thế nào để những vai trò an ninh và quyền làm việc?

Dưới đây là ví dụ về một số câu hỏi tôi sẽ hy vọng được trả lời bằng cách giải thích về vai trò an ninh:

  • làm ba vai trò có ý nghĩa gì? Hai cái đầu tiên có vẻ hiển nhiên, nhưng cái cuối cùng có vẻ ít hơn. Ví dụ. Đấng Tạo Hóa là người tạo bảng hay người tạo bản ghi?
  • Quyền xóa sẽ ở đâu? Viết?
  • Vai trò bảo mật có thể được áp dụng cho các bản ghi riêng lẻ không? (Ví dụ: tôi muốn người dùng có quyền truy cập vào chỉ một tập hợp con của các bản ghi trong bảng InstantMessages: những người mà họ gửi và những bản ghi họ nhận được. Có thể có điều gì đó về bản chất này được thực hiện thông qua vai trò bảo mật?)
  • ? (Ví dụ: Người sáng tạo có được tất cả các quyền được cấp từ người sáng tạo, được xác thực và thế giới không?)
  • Các quyền có phải là phụ gia hoàn toàn không? Hoặc tôi có thể tạo vai trò tùy chỉnh sẽ xóa đặc quyền thay vì thêm chúng không? (Ví dụ: để tạo vai trò bảo mật "Người dùng bị cấm")
  • Làm cách nào để đặt vai trò trên người dùng? Tôi có thể đặt vai trò mặc định cho mỗi người dùng được tạo không? Tôi có thể thay đổi vai trò của người dùng theo chương trình không?
  • Làm cách nào để tạo vai trò bảo mật mới? Tôi có thể tạo/cập nhật chúng theo lập trình không?

Trả lời

6

1) Các vai trò và quyền bảo mật này hoạt động như thế nào? Bạn đặt chúng trên bảng điều khiển trong môi trường phát triển.

2) Ba vai trò có ý nghĩa gì? Hai cái đầu tiên có vẻ hiển nhiên, nhưng cái cuối cùng có vẻ ít hơn. Ví dụ. sao Creator lại tham chiếu đến người tạo bảng hoặc người tạo bản ghi? - Người tạo bản ghi (và điều đó có nghĩa là tất cả các thiết bị truy cập CloudKit có cùng Tài khoản iCloud)

3) Quyền xóa sẽ ở đâu? Viết? CÓ

4) Vai trò bảo mật có thể được áp dụng cho các bản ghi riêng lẻ không? NO

5) (Ví dụ:Tôi muốn người dùng có quyền truy cập vào chỉ một tập hợp con của các bản ghi trong bảng InstantMessages: những người họ gửi và những người họ nhận được. Có thể một cái gì đó của bản chất này được thực hiện thông qua vai trò bảo mật?) 'Truy cập' có nghĩa là gì? Người dùng chỉ có thể đọc những thứ mà ứng dụng của bạn cho phép họ đọc và họ đã đọc quyền. Người dùng chỉ có thể tạo hoặc viết (và xóa) bản ghi mà ứng dụng của bạn cho phép họ tạo hoặc sửa đổi (và xóa) và họ có quyền tạo hoặc viết - phải mất cả hai.

6) Các quyền có được kế thừa không? (Ví dụ: Người sáng tạo có nhận được tất cả các quyền được cấp từ người tạo, xác thực và thế giới không?) Vai trò là các tập hợp con của người khác - người sáng tạo là tập hợp con được xác thực. xác thực là một tập hợp con của thế giới.

7) Các quyền ... có lập trình không? Quyền truy cập vào "thế giới" được xác thực "" của "người tạo" phổ biến để bạn không thể đặt quyền người dùng theo người dùng (ngoại trừ việc người dùng tạo bản ghi là người tạo duy nhất).

Nhưng chìa khóa cho tất cả điều này là phải nhớ rằng phải mất mã ứng dụng của bạn để cấp tạo/đọc/ghi vào một bản ghi VÀ người dùng cụ thể phải có quyền đó. Vì vậy, bạn có thể làm bất cứ điều gì bạn muốn trong mã để cho phép bất kỳ ai làm bất cứ điều gì - miễn là bạn đã cấp "Đã xác thực" quyền "viết"

+0

Các vai trò này chỉ áp dụng cho Cơ sở dữ liệu công cộng? Điều gì về chia sẻ hoặc riêng tư? – LamonteCristo

+0

Các vai trò này áp dụng cho cơ sở dữ liệu công cộng, và tầm thường, cũng áp dụng cho cơ sở dữ liệu riêng. Chỉ một tài khoản có quyền truy cập vào cơ sở dữ liệu riêng. Do đó người đó là "người sáng tạo" và người sáng tạo có mọi quyền. Kết thúc câu chuyện. (Các tệp được chia sẻ - Tôi không chắc chắn.) –

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