一.创建web api项目
这里创建一个名为VendorOtthApi.WebApi项目,使用默认的WeatherForecastController.cs类,这里的Get()方法加入了Authorize特性,如下所示:
[Authorize]
[HttpGet]
public IEnumerable<WeatherForecast> Get()
{
var rng = new Random();
return Enumerable.Range(1, 5).Select(index => new WeatherForecast
{
Date = DateTime.Now.AddDays(index),
TemperatureC = rng.Next(-20, 55),
Summary = Summaries[rng.Next(Summaries.Length)]
})
.ToArray();
}
二.集成keycloak 认证
集成有二种方法:1)使用keycloak 适配器,2)使用一个通用的openID connect库。
下面是适配器参数介绍:
realm:领域名称,是必需的
resource:资源名称,是指客户端ID(Client ID),是必需的
auth-server-url:Keycloak 服务器网址