当前页面的脚本发生错误没有权限 详解ABP框架的参数有效性验证和权限验证

09/11 15:10:29 来源网站:辅助卡盟网

当前脚本发生错误 行18_当前页面的脚本发生错误没有权限_当前页的脚本发生错误

(3)在ASP.NET Web API,我们使用 Abp.WebApi.Authorization.AbpApiAuthorize。

这三个类继承自不同的地方。

在MVC中,它继承自MVC自己的Authorize类。

在Web API,它继承自Web API 的Authorize类。因此,它最好是继承到MVC和Web API中。

但是,在Application 层,它完全是由Abp自己实现没有扩展子任何类。

3.使用IPermissionChecker

AbpAuthorize 适用于大部分的情况,但是某些情况下,我们还是需要自己在方法体里进行权限验证。我们可以注入和使用IPermissionChecker对象。如下边的代码所示:

 public void CreateUser(CreateOrUpdateUserInput input)
{
  if (!PermissionChecker.IsGranted("Administration.UserManagement.CreateUser"))
  {
    throw new AbpAuthorizationException("You are not authorized to create user!");
  }
  //A user can not reach this point if he is not granted for "Administration.UserManagement.CreateUser" permission.
}

当然,你可以写入任何逻辑,由于IsGranted方法只是简单返回true或false(它还有异步版本哦)。如你简单的检查一个权限并抛出一个异常如上边代码那样,你可以用Authorize方法:

public void CreateUser(CreateOrUpdateUserInput input)
{
  PermissionChecker.Authorize("Administration.UserManagement.CreateUser");
  //A user can not reach this point if he is not granted for "Administration.UserManagement.CreateUser" permission.
}

由于权限验证通常实现与Application层,ApplicationService基础类注入和定义了PermissionChecker属性。因此,权限检查器允许你在Application Service类使用,而不需要显示注入。

来源:【九爱网址导航www.fuzhukm.com】 免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

SQL Error: select * from ***_ecms_game where title like '%当前页面的脚本发生错误没有权限 详解ABP框架的参数有效性验证和权限验证%' or INSTR('当前页面的脚本发生错误没有权限 详解ABP框架的参数有效性验证和权限验证',title)>0 order by newstime desc limit 10

游戏推荐

更多>
    SQL Error: select * from ***_ecms_game where titlepic<>'' order by newstime desc limit 6