使用IdentityServer4 实现OpenID Connect服务端,添加用户身份验证。客户端调用,实现授权。IdentityServer4 目前已更新至1.0 版,在之前的文章中有所介绍。IdentityServer4 ASP.NET Core的OpenID Connec ...
使用IdentityServer4 实现OpenID Connect服务端,添加用户身份验证。客户端调用,实现授权。
IdentityServer4 目前已更新至1.0 版,在之前的文章中有所介绍。IdentityServer4 get='_blank'>ASP.NET Core的OpenID Connect OAuth 2.0框架学习保护API 。
本文环境:IdentityServer4 1.0 .NET Core 1.0.1
下面正式开始。
新建IdentityServer4服务端
服务端也就是提供服务,如QQ Weibo等。
新建一个ASP.NET Core Web Application 项目IdentityServer4OpenID,选择模板Web 应用程序 不进行身份验证。
删除模板创建的Controllers 文件以及Views 文件夹。
添加IdentityServer4 引用:
Install-Package IdentityServer4
然后添加配置类Config.cs:
public class Config { //定义系统中的资源 public static IEnumerable<IdentityResource> GetIdentityResources() { return new List<IdentityResource> { new IdentityResources.OpenId(), new IdentityResources.Profile(), }; } public static IEnumerable<Client> GetClients() { // 客户端凭据 return new List<Client> { // OpenID Connect implicit 客户端 (MVC) new Client { ClientId = "mvc", ClientName = "MVC Client", AllowedGrantTypes = GrantTypes.Implicit, RedirectUris = { "http://localhost:5002/signin-oidc" }, PostLogoutRedirectUris = { "http://localhost:5002" }, //运行访问的资源 AllowedScopes = { IdentityServerConstants.StandardScopes.OpenId, IdentityServerConstants.StandardScopes.Profile } } }; } //测试用户 public static List<TestUser> GetUsers() { return new List<TestUser> { new TestUser { SubjectId = "1", Username = "admin", Password = "123456", Claims = new List<Claim> { new Claim("name", "admin"), new Claim("website", "https://www.cnblogs.com/linezero") } }, new TestUser { SubjectId = "2", Username = "linezero", Password = "123456", Claims = new List<Claim> { new Claim("name", "linezero"), new Claim("website", "https://github.com/linezero") } } }; } }
原标题:IdentityServer4 使用OpenID Connect添加用户身份验证
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。