我正在一个用户属于多个组织的Web应用程序上工作。要使用的角色由用户当前正在查看Web应用程序的组织来确定。登录后,用户可以轻松地在所属的不同组织之间进行切换。对于某些组织,用户可能是ADMIN,而在其他组织中只是成员。

在ServiceStack中,最好的方法是什么?利用Dictionary<string, string> Meta请求DTO的Authenticate属性是否有意义?还是创建一个覆盖AuthProvider方法的自定义IsAuthorized?还是其他技术?

最佳答案

最简单的解决方案是分配自定义org1.Adminorg2.Member角色或权限,这样您就可以使用ServiceStack的内置[RequiresRole]来验证访问权限。

定制的替代方法是为AuthUserSession对象创建Custom UserSession和适当的类型化元数据集合。然后使用自定义RequestFilterAttribute来检查UserSession具有适当的访问权限。

关于c# - 属于多个组织的用户的多个角色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49542953/

10-13 05:26