把授权和认证过的Server启动一下先
因为代码是之前的代码,所以有些代码需要清除一下
之类注释掉,因为这里暂时没有用到EFCode了

运行的时候发现一点错误

发现登陆的时候使用的RegisterViewModel

所以这里我们也需要把之前的Email修改为UserName

启动程序


登陆就需要输入这里的用户名和密码

登陆成功,现在是在他本地,

新建客户端,把登陆的信息放到客户端内

新建一个mvc的网站

本身在asp.net core的Authentication认证模块已经内置实现了openIdConnect
所以在这个mvc网站里面不要添加任何第三方的引用,
我们唯一要做的就是在这个地方,把Authentication加进来
先添加引用,VScode的只能感知不是很好用,需要先选择一下我们的项目

在命令行 到mvcCient的项目文件夹下 ,然后运行dotnet restore。控制台的终端也需要在我们的项目下

只能感知没有调出来,直接复制完整的引用路径过来。然后切换到VS2017里面

VS2017把这两个项目加进来


mvc的客户端设置为5001启动

Server设置为5千来启动

服务端

原来这里加了一个Client,如果现在使用OpenIdConnect的话这里需要加一些配置

这个配置就是我们要调转的地址,正常情况下我们是存在数据里的 不是直接改代码的,在asp.net mvc中这个地址的后面的signin-oidc是固定的
这个地址会自动处理登陆的逻辑

退出返回的地址

在设置Scope

运行服务端

客户端的HomeController设置必须登陆才能访问

客户端也运行起来,客户端启动后报错

客户端把这里也改成5001

这两个地方都要改一下

启动后就成功个跳转了


跳转到 consent这样的一个页面,是要做授权的地方,我们这里没有添加,所以还需要改一个配置

这里我们把Consent设置为false,这个页面就是用于点是否允许授权的页面

再次运行客户端,因为登陆的cookie已经保存过了 ,所以应该会自动跳转回家去。

成功跳转到了5001的界面。说明我们已经登陆成功了

把这段cookie复制出来看一下

把cookie都删除掉

删除后就会跳转到登陆页面

服务端之前这里没有加上这段代码,现在加上

拿到Claims页面后,在客户端显示出来

Server端我们返回的是这些信息

因为没有添加ProfileService所以返回的信息有限。接下来会添加 对profile进行补充

16.oauth2 + oidc 实现 client部分的更多相关文章

  1. 【ASP.NET Core分布式项目实战】(二)oauth2 + oidc 实现 server部分

    本博客根据http://video.jessetalk.cn/my/course/5视频整理(内容可能会有部分,推荐看源视频学习) 资料 我们基于之前的MvcCookieAuthSample来做开发 ...

  2. 15.oauth2 + oidc 实现 server部分

    OAuth主要做授权. OpenIdConnect简历在OAuth2.0基础之上的,相结合 客户端.授权中心.Resource Owner用户本身(资源的拥有者).Resource Server 通过 ...

  3. Caused by: com.alibaba.dubbo.remoting.TimeoutException: Waiting server-side response timeout by scan timer. start time: 2016-07-20 16:27:34.873, end time: 2016-07-20 16:27:39.895, client elapsed: 0 ms

    方案一: 重启dubbo连接 zookeeper 方案二: 经压测,greys跟踪得知,是dubbo的monitor的问题.主要超时的方法是dubbo的getIP方法,monitor每次收集数据的时候 ...

  4. ASP.NET Core分布式项目实战

    ASP.NET Core开发者成长路线图 asp.net core 官方文档 https://docs.microsoft.com/zh-cn/aspnet/core/getting-started/ ...

  5. 【笔记目录1】ASP.NET Core分布式项目实战

    当前标签: ASP.NET Core分布式项目实战 共2页: 1 2 下一页  35.Docker安装Mysql挂载Host Volume GASA 2019-06-20 22:02 阅读:51 评论 ...

  6. PHP 通过Socket收发16进制数据

    最近在php下做关于Socket通讯的相关内容,发现网络上好多人在了解如何进行16进制收发,研究了下,代码如下,欢迎拍砖. <?php        $sendStr = '30 32 30 3 ...

  7. 《连载 | 物联网框架ServerSuperIO教程》- 16.OPC Server的使用步骤。附:3.3 发布与版本更新说明。

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  8. 《连载 | 物联网框架ServerSuperIO教程》- 16.集成OPC Server,及使用步骤。附:3.3 发布与版本更新说明。

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍 <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制. <连载 | 物联网框架Serve ...

  9. 本地Linux备份服务器[Client]定期备份云服务器[Server]上的文件(下)

    https://www.cnblogs.com/kevingrace/p/5972563.html Client上使用rsync命令查看服务器上文件列表rsync --list-only -e &qu ...

随机推荐

  1. Django-model_form

    ModelForm a. class Meta: model, # 对应Model的 fields=None, # 字段 exclude=None, # 排除字段 labels=None, # 提示信 ...

  2. UML类图组成

    本文转载至 http://blog.csdn.net/fengsh998/article/details/8105666     UML类图的相关知识,UML类图(Classdiagram)是最常用的 ...

  3. openstack之路:虚拟机的配置

    创建虚拟机有2种方法: 1 virt-manager. 优点:上手简单.缺点:实现自动化比较困难 2 virsh创建 优点:自动化配置简单.缺点:创建过程比较复杂 我们首先通过virt-manager ...

  4. appium(2)-Setting up Appium

    Setting up Appium Running Appium on Windows Additional Setup for Android App Testing Download latest ...

  5. [CPP - STL] functor刨根问底儿

    作为STL六大组件之一,在STL源代码及其应用中,很多地方使用了仿函数(functor),尤其在关联型容器(如set.map)以及algorithm(如find_if.count_if等)中.虽然已经 ...

  6. 解决访问google的问题

    我用的是360安全浏览器. 1.点击扩展,搜索goole 2.可以看到第一个就是谷歌访问助手 3.下载安装 4.点击永久激活之后它会提示你怎么做 5.大概是让你修改主页,修改主页是在选项里,第一个基本 ...

  7. Ubuntu Linux系统环境变量配置文件【转】

    本文转载自:https://my.oschina.net/qinlinwang/blog/30471 Ubuntu Linux系统环境变量配置文件:  /etc/profile : 在登录时,操作系统 ...

  8. CodeForces - 86D D. Powerful array —— 莫队算法

    题目链接:http://codeforces.com/problemset/problem/86/D D. Powerful array time limit per test 5 seconds m ...

  9. HDU1102 Constructing Roads —— 最小生成树

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1102 题解: 纯最小生成树,只是有些边已经确定了要加入生成树中,特殊处理一下这些边就可以了. krus ...

  10. mysql学习笔记(七)—— MySQL内连接和外连接

        MySQL内连接(inner join on) MySQL的内连接使用inner join on,它的效果跟使用where是一样的,如果联结的是两个表,那么需要左右的条件或者说字段是需要完全匹 ...