2017-08-31 121 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

还没有,但我们会改变这一点,我会让你知道一旦我们取得了公开。 –