> 授权类型(Authorization Grant) - Authorization code - Implicit - Resource Owner Password Credentials - Client Credentials - Device Code - Refresh Token >端点(Endpoint) - Authorization Endpoint ,授权端点 - Token Endpoint ,Token端点 > scope 范围 - 代表资源所有者在被保护资源那里的一些权限。 > Access Token - 有时候叫做token - 用来访问被保护资源的凭据 - 代表了给客户端颁发的授权,也就是委托给客户端的权限。 > Refresh Token - 用来获取Access Token 的凭据 - 由Authorization Server 颁发给客户端应用的 - 可选 - 具备让客户端应用逐渐降低访问权限的能力 > 错误类型 - invalid_request - invalid_client - invalid_grant - Unauthorized_client - Unsupported_grant_type - invalid_scope > OpenID connect 身份认证 - ID Token - UserInfo端点 - 提供一组标识身份的scopes和claims - profile - email - address - phone > OpenID Connect三个流程 - Authorization code Flow - Implicit Flow - Hybrid Flow > Identity Server4功能 - protect your resources - authenticate users using a local account store or via an external identity provider - provide session management and single sign-on - manage and authenticate clients - issue identity and access token to clients - valiclate tokens >准备 - 安装自定义模板 - dotnet new -i IdentityServer4.Templates > 设置Asp.Net核心应用程序 - 首先为应用程序创建一个目录 - 然后使用我们的模板创建一个包含基本IdentityServer设置的ASP.NET Core应用程序 ``` md quickstart cd quickstart md src cd src dotnet new is4empty -n IdentityServer ``` - 这里创建了以下文件 - IdentityServer.csproj- 项目文件和Properties\launchSettings.json文件 - Program.cs和Startup.cs- 主要的应用程序入口点 - Config.cs - IdentityServer资源和客户端配置文件 - 创建IS4模板 - 命令:dotnet new -i IdentityServer4.templates -删除创建的IS4模板 - 命令:dotnet new --debug:reinit - 创建项目 - 命令:dotnet new is4inmem --name Idp