Keycloak未知的身份验证机制
问题描述:
我需要在Errai应用程序中使用keycloak的帮助。我收到“KEYCLOAK”的“未知身份验证方法”错误?我运行keycloak-appliance(不同的端口),并且Errai应用在WEB-INF内的web.xml文件中有一个KEYCLOAK 当我使用mwt gwt:run运行Errai应用时,我得到:RuntimeException由“未知的认证机制KEYCLOAK”造成。我不知道如何解决这个问题。Keycloak未知的身份验证机制
答
只是想给@ 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服务器相同)。接下来,在野蛮主目录中解压下载。与应用程序服务器的运行,只需使用以下命令将Keycloak配置安装到相应的文件:
jboss-cli.sh -c --file=adapter-install.cli
当该脚本完成后,您的配置文件将有新条目添加,以适应您的Web KEYCLOAK
进入.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
,你应该全都定下来。
顺便说一句,如果你只是开始实现你的应用程序考虑使用Spring Security适配器 - 你将能够创建'war文件,这将在JBoss和Tomcat上都可用,例如,不需要安装额外的适配器到服务器。 – 2016-06-02 09:27:21