zoukankan      html  css  js  c++  java
  • UseAuthentication和UseAuthorization

    UseAuthentication 就是鉴权 找出解析请求携带的信息

    UseAuthorization 授权 权限检查,看看有没有权限

     我们先来同步几个知识。

    policy 是策略 满足什么条件 不可以叠加 

    roles 是角色 特殊的policy  也是规则只是微软封装好了的特殊策略。 roles 可以多个叠加(roles=(user,admin))

    authenticationSchemes 用户信息来源,比如他是基于cookies 还是jwt 的 .可以多schemes

    1多个Scheme是可以共存的

    2不标记或者标记默认Scheme走的都是默认鉴权

    3也可以通过标记指定Scheme去鉴权

    4声明多个Scheme信息都保存Context.User

    1多个Authorize声明,是需要叠加满足,才能访问
    2单个的Authorize声明,Policy和Role需要同时满足,才能访问
    3 单个的Authorize声明,用户信息来源以AuthenticationSchemes声明为准(没有则用默认,有多个则可以共享用户信息)
    4多个Role可以写在一起,满足一个就行
    5多个Policy,如果要同时满足,就分成多个Authorize声明,如果满足一个就行,则写成一个DRequiredment

    AddUseAuthorization()默认就有了  是在addControllers() 里面的包含的。

    通过源码我们不难看到 UseAuthentication   就是在往context.user 里面装赋值。  在UseAuthorization   授权的时候 看看这个里面又没有这个值 并且有么有权限

    授权源码

     

     

  • 相关阅读:
    正则判断密码强弱
    QQ号码正则判断
    简单正则验证
    计算星期几
    实现这一天是这一年中的第几天
    倒计时
    选项卡放大镜(淘宝购物效果)
    遮罩层放大镜
    普通放大镜
    分布式事务解决方案(一) 2阶段提交 & 3阶段提交 & TCC
  • 原文地址:https://www.cnblogs.com/jasontarry/p/15386139.html
Copyright © 2011-2022 走看看