blazor Authorize授权验证实现


前言

想要像MVC一样使用[Authorize]属性来实现授权验证。但是,在Razor组件中添加ttribute [Authorize],访问对应的组件确一直无法命中Authorize。

实现

在Razor组件中,使用[Authorize]属性,需要将App.Razor中的RouteView 标签改为AuthorizeRouteView

//App.Razor

    
        //RouteView 改 AuthorizeRouteView
        
    
    
        
            

Sorry, there's nothing at this address.

这样我们再次在组件中添加[Authorize]属性,就可以命中了。同时我们可以通过重写“策略”的方式来自定义验证逻辑,[Authorize(Policy = "策略名称"]

但是,[Authorize]属性是作用于整个页面。如果想单独终于页面中的一个部分,可以使用组件来实现。

同样,也支持添加策略验证。