AssertRequiredRoles的目的?

时间:2013-03-05 14:46:55

标签: servicestack

我正在实现我自己的RequiredRole属性RequiredAnyRole,我传入一个列表,但用户只需要处于其中一个角色。我已经实现了我自己的名为HasAnyRole的方法,该方法只根据.Any()而不是.All()进行查询。

然后我覆盖了Execute方法以使用我的方法而不是HasAllRoles。问题是我不确定方法:AssertRequiredRoles正在做什么?似乎没有被称为?

我是否应该覆盖它以使用.Any()而不是.All()?这是原始代码:

https://github.com/ServiceStack/ServiceStack/blob/82241fc96e187d12f9db2556aea37cf327813adc/src/ServiceStack.ServiceInterface/RequiredRoleAttribute.cs

1 个答案:

答案 0 :(得分:1)

AssertRequiredRoles是一种静态助手方法,可供RequestLogsService等其他插件使用,以确保只有具有所需角色的用户才能访问。用作普通属性过滤器时不会调用它。

一旦你覆盖执行,你就可以完全控制执行的内容,所以你只需要覆盖你需要的东西。