如何为keycloak创建外部登录页面(SPA)

问题描述 投票:0回答:1

我目前正在尝试评估一种创建自定义登录页面的方法,该页面不是由 Keycloak 托管的。我知道可以为登录创建主题,但这不是我想要的。

我们目前正在从 AWS Cognito 迁移到 Keycloak。使用 Cognito 有两种登录方式:托管(由 Cognito)登录页面或创建您自己的登录名。我们做了后者。我们的单页应用程序使用 AWS javascript 库来登录用户。该实现能够对所谓的挑战(取决于流程)做出反应,即设置 MFA 设备、输入 MFA 代码、密码重置...

使用Keycloak,似乎没有办法创建这样的外部登录应用程序。您所能做的就是创建自己的主题或通过 REST 创建令牌。但是,这意味着您已经拥有用户名、密码,可能还拥有 MFA 令牌。没有办法实现登录流程,因为用户输入用户名和密码后,取决于当前用户状态,是否需要设置新密码,或者是否需要设置MFA设备或接受条款以及条件或者其他什么。

是通过创建主题来创建自己的登录页面的唯一方法吗?难道真的没有办法用外部SPA来登录用户吗?

我们已经尝试使用以下 REST 端点

/realms/{REALM_NAME}/protocol/openid-connect/auth

但只会返回 HTML(托管登录页面)。我们无法接收 JSON。

reactjs keycloak keycloak-rest-api
1个回答
0
投票

我开始开发一个自定义提供程序,用于在提交用户名和密码时配置外部 API。

在配置中,您将能够配置您的后端网址和成功状态代码

你可以在这里找到它 => https://github.com/cellezam/kc-http-authenticator

最新问题
© www.soinside.com 2019 - 2024. All rights reserved.