我已经设置了一个密钥披风服务器和前端,但我似乎无法理解如何在我的.NET 5后端API上设置它。我在Keycloak上安装了一个后端客户端和一个前端客户端。客户端协议是openid连接,访问类型在两个客户端上都是公开的,但如果有必要,我可以更改。
前端工作查找和我可以登录,前端将在请求时将令牌发送到API的头部(授权)与值“比勒”+令牌。
在控制器中,我添加了授权标记:
[Authorize]
[HttpGet]
public IActionResult GetAllRelays()
{所有带有授权标签的端点返回401 atm。
在Startup.cs中,我有:
services.AddAuthentication(options =>
{
options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
}).AddJwtBearer(o =>
{
o.Authority = KeycloakServerRealm;
o.Audience = KeycloakClientId;
o.MetadataAddress = KeycloakServerRealm + "/.well-known/openid-configuration";
});KeycloakServerRealm是:"https://dev.my-domain.com/auth/realms/my-realm“
KeycloakMetadata是:"https://dev.my-domain.com/auth/realms/my-realm/.well-known/openid-configuration“
KeycloakClientId是:“我的后端-客户端-id”
我还需要做什么?
发布于 2022-10-23 08:25:56
变量KeycloakServerRealm是:"https://dev.my-domain.com/auth/realms/my-realm“
一定是: KeycloakServerRealm是:"https://dev.my-domain.com/“--它对我有用
https://stackoverflow.com/questions/72077532
复制相似问题