zoukankan      html  css  js  c++  java
  • 18.Consent 实现思路介绍


    讲一下实现Consent的逻辑
    interaction它会根据returnUrl
    输入用户名和密码后是在登陆的Controller,登陆完之后呢,会有一个returnUrl

    returnurl会被带到Consent页面



    登陆后会跳转到consent页面,returnUrl也带过来了


    在Consent页面,把这三个都添加进来了。Client、resource、IdentityServerInieractinService


    IdentityServerInieractinService主要是负责根据returnUrl拿到context。这里调用的方法GetAuthorizationContextAsync

    F12进去查看AuthorizationRequest包含的内容


    这个ScopeRequest就是,就是你这一次请求哪些Scope

    比如说这个scope,你只请求api1

    通过request的ClientId,然后通过ClientStore把这个client的信息拿出来

    拿到的这个Client其实就是我们在Config配置的这些信息

    Resource包含ApiResource和IdentityResource


    每一条IdentityResource其实是一个scope



    每一个ApiResource里面其实是多个Resource的
    F12进去看源代码。

    APIResource里面其实是有一个Scope的集合

    Consent这个Controller主要是用来干嘛的呢?
    通过我们的IdentityServerInterationService获取当前请求的上下文

    这个上下文request里面有我们的ClientID,以及请求了哪些Scope,ScopesRequested。
    scope里面只包含了名字




    返回的是Resources,Resources再次F12再进去。

    它里面就包含了两个,一个IdentityResource一个是ApiResource

    然后就可以根据resource拼成一个Model

    拼成的Model展示到我们的页面上

    先来实现页面的显示




     

  • 相关阅读:
    CSS 会被继承的属性
    List的遍历和删除元素
    java中unicode和中文相互转换
    Hibernate注解方式一对多自关联关系映射
    HQL: Hibernate查询语言
    java replaceall 使用正则表达式替换单等号,不替换其他相关的等号。
    Java 将图片转二进制再将二进制转成图片
    返回上一页并刷新与返回不刷新代码
    Css圆角边框
    jquery mobile
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/10970683.html
Copyright © 2011-2022 走看看