[英]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對象時,可以將角色viewer
和editor
都添加為post對象的ACL。 例如,查看者角色只能具有讀訪問權限,編輯器可以具有讀寫訪問權限。
對於每個組織:
uniqueOrganizationName
uniqueOrganizationName
用戶(關系)。 現在,將來,如果要將該組織的所有用戶添加到例如editorRole
,而不是將editorRole
添加到所有用戶對象,則可以將uniqueOrganizationName
添加到editorRole
角色。 現在,該組織的所有用戶都可以修改所有帖子。 如果您希望組織的某些用戶能夠編輯帖子,則將這些用戶添加到editorRole
用戶。
注意:這種方法是全球性的 。 所以組織編輯可以編輯所有帖子對象。 如果要限制組織的編輯者只能編輯屬於該組織的帖子:
viewUniqueOrganizationRole
& editUniqueOrganizationRole
。 現在,當您創建新帖子時,根據帖子所屬的組織,將viewUniqueOrganizationRole
&& editUniqueOrganizationRole
添加到帖子對象的ACL中。
viewUniqueOrganizationRole
,以便能夠查看屬於該組織的帖子,或者您可以將用戶添加到editUniqueOrganizationRole
以便他們可以編輯您的帖子。 我希望我能回答你的問題。 這是一個復雜的設計。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.