我正在一个用户属于多个组织的Web应用程序上工作。要使用的角色由用户当前正在查看Web应用程序的组织来确定。登录后,用户可以轻松地在所属的不同组织之间进行切换。对于某些组织,用户可能是ADMIN,而在其他组织中只是成员。
在ServiceStack中,最好的方法是什么?利用Dictionary<string, string> Meta
请求DTO的Authenticate
属性是否有意义?还是创建一个覆盖AuthProvider
方法的自定义IsAuthorized
?还是其他技术?
最佳答案
最简单的解决方案是分配自定义org1.Admin
,org2.Member
角色或权限,这样您就可以使用ServiceStack的内置[RequiresRole]
来验证访问权限。
定制的替代方法是为AuthUserSession
对象创建Custom UserSession和适当的类型化元数据集合。然后使用自定义RequestFilterAttribute来检查UserSession具有适当的访问权限。
关于c# - 属于多个组织的用户的多个角色,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49542953/