2017-08-31 105 views
1

我想了解如何擴展wolkenkit auth層。Wolkenkit:授權和用戶角色的ACL

說我想要不同角色的用戶:普通,管理員和管理員。

  • 正常用戶可以查看和修改自己的內容,但不允許其他用戶修改的內容。

  • 主持人允許用戶修改所有條目,但無權刪除除自己內容之外的任何內容。

  • admin用戶可以修改和刪除所有內容。

  • 還有未認證的guest用戶誰可以讀取所有內容,但不修改任何內容。我會在需要定義其他角色

    const initialState = { 
        isAuthorized: { 
        commands: { 
         issue: { forAuthenticated: false, forPublic: false } 
        }, 
        events: { 
         issued: { forAuthenticated: true, forPublic: true } 
        } 
        } 
    }; 
    

    對於我的要求:

讀取文檔的Write model: Configuring authorization我可以沿着線寫東西的客人/正常用例模型這個對象。喜歡的東西{ forModerator: true, forAdmin: true }

還有Granting access from a command在運行時更改權限,但我不確定這是否會起作用。即使是這樣,那感覺相當哈克。

這在某種程度上可能嗎?

回答

1

聲明:我是wolkenkit的開發人員之一。

長話短說:不,現在很不幸,這是不可能的,但是這個功能在我們的路線圖上。在今天至少,我不能告訴你什麼時候這將是可用的。

你最好的選擇是自己做。一種方法可能是使用您的身份提供商在版主的JWT中包含moderator聲明,然後在命令處理程序中正確處理。

在命令處理程序你必須

command.user.token 

訪問令牌,讓你可以在權利要求所需要的。我很抱歉,現在沒有更好的答案:-(

+1

你的路標是否公開顯示?我對此非常感興趣。 – Alp

+1

還沒有,但我們會改變這一點,我會讓你知道一旦我們取得了公開。 –