创建IdentityServer4
Posted hwxing
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建IdentityServer4 相关的知识,希望对你有一定的参考价值。
该项目使用dotnet版本3.1 ,vs code创建
创建Web Api项目
创建命令
dotnet new webapi --name WebApi
修改./properties/launchSettings.json
"profiles": {
"WebApi": {
"commandName": "Project",
"launchBrowser": true,
"launchUrl": "weatherforecast",
"applicationUrl": "http://localhost:5001",
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
}
}
运行下面命令安装
dotnet add package Microsoft.AspNetCore.Authentication.JwtBearer --version 3.1.0
在startup.cs文件的configureservices添加
services.AddAuthentication("Bearer")
.AddJwtBearer("Bearer", options =>
{
options.RequireHttpsMetadata = false;
options.Authority ="http://localhost:5000";
options.Audience = "api1";
});
在startup.cs文件的configure添加
app.UseAuthentication();
在controller/WeatherForecastController.cs文件添加 [Authorize]
然后开启AuthServer、WebApi的程序
使用postman访问 http://localhost:5001/api/value 结果报401,没有认证
使用postman 访问 http://localhost:5000/connect/token 来获取 access_token
再将access_token加载 http://localhost:5001/api/value 中的Authorization进行请求
以上是关于创建IdentityServer4 的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 IdentityServer4 创建 RsaSecurityKey.KeyId