IdentityServer4 Code模式(Code)

IdentityServer4 Code模式(Code)

目录

  • IdentityServer4 Code模式(Code)
    • 前言
    • 创建项目
      • 创建ids4鉴权中心
        • 一 、首先登陆ids4官网,准备搭建ids4环境
        • 二 、使用官网提供的安装命令
        • 三、ids4模板安装好后,我们使用命令创建项目
        • 配置项目
      • 创建测试项目
        • 创建mvc项目,需要HTTPS,不使用HTTPS无法正常使用
        • 添加 IdentityServer4 引用
        • 配置项目
      • 项目搭建完毕接下来开始测试
    • 测试调用ids4 鉴权服务器
      • 首先启动ids4 项目,如图:
      • 启动测试demo ,我们看到从5000端口会直接跳转到5001端口,这说明已经前往ids4服务器登录

前言

源码地址:GetHub地址

在这里插入图片描述

在密码模式中,需要客户端保存token。code模式改善了这一点,用户的账户密码将不再和客户端存在关系,用户直接去ids4服务器的登录页面登录,登陆成功后提供给客户端一组编码,然后客户端再通过这组编码,向ids4服务器请求token,随后使用token正常访问。当然限制也较多,一般使用在机密型web程序中,
若使用在前后台交互的web程序中是没有意义的

Client Types客户端类型
Confidential 机密的
这种客户端有能力维护其凭据的机密性,位于服务端,例如 使用reazer语法编写的ASP.NET Core MVC
Public 公开的
这种客户端无法维护其凭据的机密性,位于客户端设备,例如 JavaScript(Angular,Vue),移动应用,原生应用/软件等

创建项目

本次需要两个项目,都需要使用HTTPS协议

创建ids4鉴权中心

一 、首先登陆ids4官网,准备搭建ids4环境

ids英文官网
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

二 、使用官网提供的安装命令
	打开控制台,输入命令  dotnet new -i IdentityServer4.Templates成功后如图

在这里插入图片描述

三、ids4模板安装好后,我们使用命令创建项目
 首先选择需要创建项目的位置

在这里插入图片描述
确认后输入代码
dotnet new is4inmem -n AuthenticationIds4Code
在这里插入图片描述
一个鉴权模板项目便创建好了
在这里插入图片描述

配置项目

在这里插入图片描述
在这里插入图片描述

创建测试项目

创建mvc项目,需要HTTPS,不使用HTTPS无法正常使用

在这里插入图片描述

添加 IdentityServer4 引用

在这里插入图片描述

配置项目

在这里插入图片描述

在这里插入图片描述

项目搭建完毕接下来开始测试

测试调用ids4 鉴权服务器

这里我们将 测试demo端口设置为 5000
ids4鉴权服务器设置为5001

首先启动ids4 项目,如图:

在这里插入图片描述

启动测试demo ,我们看到从5000端口会直接跳转到5001端口,这说明已经前往ids4服务器登录

在这里插入图片描述