首页
学习
活动
专区
圈层
工具
发布

Net和OIDC
EN

Stack Overflow用户
提问于 2021-10-22 08:42:34
回答 2查看 165关注 0票数 0

我尝试创建使用Keycloak授权的.Net Core3.1WebAPI。我想实现以下场景:

浏览器向API发送一些请求。

  1. 如果用户未通过身份验证,API将重定向到Keycloak登录页。 API检查。 API发送响应。 但这不管用

进入第二步,我有:

System.Exception:关联失败。在Microsoft.AspNetCore.Authentication.RemoteAuthenticationHandler.

EN

回答 2

Stack Overflow用户

发布于 2021-10-22 10:00:17

如果在负载均衡器后面的多个实例上运行应用程序,则需要确保在整个身份验证周期中使用相同的服务实例。否则,可能会出现关联错误。

票数 0
EN

Stack Overflow用户

发布于 2022-04-10 16:20:41

不确定您的错误是什么,因为没有提供配置,但是如果您需要为您的KeyCloak核心后端轻松添加.Net身份验证,您可以使用以下代码(来自包Delobytes.AspNetCore.Infrastructure)

代码语言:javascript
复制
services.AddKeyCloakAuthentication("SchemeName", true, options =>
    {
        options.Authority = "https://mykeycloakinstallation.com/auth/realms/myrealm"; //"issuer" endpoint
        options.Audience = "account";
        options.OpenIdConfigurationEndpoint = "https://mykeycloakinstallation.com/auth/realms/myrealm/.well-known/openid-configuration";
        options.TokenValidationParameters = new TokenValidationOptions
        {
            RequireExpirationTime = true,
            RequireSignedTokens = true,
            ValidateIssuer = true,
            ValidIssuer = "https://mykeycloakinstallation.com/auth/realms/myrealm",
            ValidateAudience = true,
            ValidAudience = "account",
            ValidateIssuerSigningKey = true,
            ValidateLifetime = true,
            ClockSkew = TimeSpan.FromMinutes(2),
        };
    });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69673902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档