首页 > 其他 > 详细

16.oauth2 + oidc 实现 client部分

时间:2019-06-03 18:39:44      阅读:91      评论:0      收藏:0      [点我收藏+]


把授权和认证过的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部分

原文:https://www.cnblogs.com/wangjunwei/p/10969097.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!