簡體   English   中英

如何隨着時間的推移正確使用Parse.Roles關系為多個Parse.Objects和Users?

[英]How do I correctly use Parse.Roles relationships for multiple Parse.Objects and Users over time?

以下大部分都是使用parse-dashboard完成的,所以它有點羅嗦,但我理解代碼不是關系。

我正在設置Parse.Roles,似乎每個Parse.Object都需要將Role設置為可以訪問給定的Parse.Object。 例如,對象ACL需要包含“管理員”和“主持人”(具有相應的權限),供管理員或主持人才能訪問。

由於父角色和子角色是可能的,因此使用“組織”角色設置Parse.Object的ACL是有意義的,然后由子角色進一步修改。 因此,“組織”中的“查看者”不能寫,但“組織”中的“管理員”可以讀/寫。 我嘗試了多種方法 - 將一個用戶與“查看者”關聯,將一個用戶關聯到“組織”中的“管理員”,但這似乎不起作用。

我當前的解決方案:手動/編程設置具有多個預設角色的每個Parse.Object ACL。 例如,使用ACL角色“查看器”和“管理員”解析類“人員”。

問題:如果我想在將來為同一個組織創建一個不同的角色,我是否需要遍歷每個Parse.Object並為每個過去的對象手動設置新角色?

有意義的是,這些關系應該由父組織管理,這樣就不需要手動完成,但這似乎不起作用。

任何答案,想法或鏈接都表示贊賞。

如您所述,角色可以擁有角色並繼承其父角色的特權。

因此,如果新角色適用於類的所有對象或其中的一組,則不需要遍歷所有解析對象。

我會舉個例子:

假設您有一個名為Posts的類。

  • 你有一個角色名稱viewer ,並且你有一個名為editor的角色。

  • 在創建新的post對象時,可以將角色viewereditor都添加為post對象的ACL。 例如,查看者角色只能具有讀訪問權限,編輯器可以具有讀寫訪問權限。

對於每個組織:

  • 首先,創建角色名稱uniqueOrganizationName
  • 然后,將屬於該組織的所有用戶添加到uniqueOrganizationName用戶(關系)。

現在,將來,如果要將該組織的所有用戶添加到例如editorRole ,而不是將editorRole添加到所有用戶對象,則可以將uniqueOrganizationName添加到editorRole角色。 現在,該組織的所有用戶都可以修改所有帖子。 如果您希望組織的某些用戶能夠編輯帖子,則將這些用戶添加到editorRole用戶。

注意:這種方法是全球性的 所以組織編輯可以編輯所有帖子對象。 如果要限制組織的編輯者只能編輯屬於該組織的帖子:

  • 為每個組織創建兩個唯一角色viewUniqueOrganizationRoleeditUniqueOrganizationRole

現在,當您創建新帖子時,根據帖子所屬的組織,將viewUniqueOrganizationRole && editUniqueOrganizationRole添加到帖子對象的ACL中。

  • 在此之后,您可以將用戶添加到viewUniqueOrganizationRole ,以便能夠查看屬於該組織的帖子,或者您可以將用戶添加到editUniqueOrganizationRole以便他們可以編輯您的帖子。

我希望我能回答你的問題。 這是一個復雜的設計。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM