我需要在 Errai 应用程序中使用 keycloak 的帮助。我收到有关“KEYCLOAK”的“未知身份验证方法”的错误?我有 keycloak-appliance 运行(虽然在不同的端口上),并且 Errai 应用程序在 WEB-INF 内的 web.xml 文件中有一个 with KEYCLOAK
当我使用 mvn gwt:run 运行 Errai 应用程序时,我得到:由“未知身份验证机制 KEYCLOAK”引起的 RuntimeException。我不知道如何解决这个问题。
最佳答案
只是想为@cfsnyder 的答案添加更多细节。为了让您的应用程序服务器能够识别 web.xml 中的定义,如下所示:
<login-config>
<auth-method>KEYCLOAK</auth-method>
<realm-name>internal</realm-name>
</login-config>
您需要告诉 jboss(在这种情况下)如何解释该特定的身份验证方法。在我回答时,这是在 section 8.2 of the Keycloak docs .
一、download the keycloak adapter (请记住,这与 Keycloak 服务器不同)。接下来,在 wildfly 主目录中解压缩下载文件。随着您的应用程序服务器运行,只需使用以下命令将 Keycloak 配置安装到适当的文件中:
jboss-cli.sh -c --file=adapter-install.cli
此脚本完成后,您的配置文件将添加新条目以容纳
KEYCLOAK
在您的 web.xml 中输入。该脚本会将类似这样的内容添加到 domain.xml 或 Standalone.xml: <security-domain name="keycloak">
<authentication>
<login-module code="org.keycloak.adapters.jboss.KeycloakLoginModule" flag="required"/>
</authentication>
</security-domain>
一旦您拥有适配器提供的 Keycloak 模块文件 + 安全域配置以链接
KEYCLOAK
方法到适当的LoginModule
,你应该准备好了。
关于wildfly-8 - Keycloak 未知的认证机制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27253559/