private ConfigurationDbContext _context; public ValuesController(ConfigurationDbContext context) { _context = context; }
新增AI编程课程,引领技术教育新趋势
private ConfigurationDbContext _context; public ValuesController(ConfigurationDbContext context) { _context = context; }
添加动态新增Client的API接口:
[HttpPost] public IActionResult Post([FromBody] IdentityServer4.EntityFramework.Entities.Client client) { var res = _context.Clients.Add(client); if(_context.SaveChanges() >0) return Ok(true); else return Ok(false); }
控制器代码如下:

(1)安装IdentityServer4.AccessTokenValidation包
(2)在startup.cs中ConfigureServices方法添加如下代码:
//protect API services.AddMvcCore() .AddAuthorization() .AddJsonFormatters(); services.AddAuthentication("Bearer") .AddIdentityServerAuthentication(options => { options.Authority = "http://localhost:5000"; options.RequireHttpsMetadata = false; options.ApiName = "api1"; });
AddAuthentication把Bearer配置成默认模式,将身份认证服务添加到DI中。
AddIdentityServerAuthentication把IdentityServer的access token添加到DI中,供身份认证服务使用。
(3)在startup.cs中Configure方法添加如下代码:
public void Configure(IApplicationBuilder app, IHostingEnvironment env) { //if (env.IsDevelopment()) //{ // app.UseDeveloperExceptionPage(); //} //AddSwagger