IdentityServer4 And AspNetCore.Identity Get AccessToken 问题

结合 AspNetCore.Identity  主要就是下载 官方的IdentityServer4.AspNetIdentity 这个包

下面来看下源码

里面帮助我们处理了 

IUserClaimsPrincipalFactory

IResourceOwnerPasswordValidator

IProfileService

的实现,所以我们在代码中只要运用了如下实现后,就不需要再去实现了

  public static IIdentityServerBuilder AddAspNetIdentity<TUser>(this IIdentityServerBuilder builder) where TUser : class;

淡然你也可以不使用这个,自己单独按照自己的需求去实现 至少需要实现如上三个接口

下面在说下 获取Token问题:

await HttpContext.GetTokenAsync(OpenIdConnectParameterNames.AccessToken); 

使用发现这里这样写是获取不到Token,这是Web连接的OIDC本地是在Cookies里面,如果是Api接口采用上面的是可以获取得到的,集成IdentityServer4登录使用的OIDC处理登录,所以这里需要加上OIDC配置的 Scheme

 var info = await HttpContext.GetTokenAsync("Cookies",OpenIdConnectParameterNames.AccessToken);
原文地址:https://www.cnblogs.com/liyouming/p/9493531.html