Мне нужна помощь с использованием keycloak в приложении Errai. Я получаю сообщение об ошибке "Неизвестный метод аутентификации" для "KEYCLOAK"? У меня работает keycloak-appliance (на другом порту), а приложение Errai имеет KEYCLOAK в файле web.xml внутри WEB-INF Когда я запускаю приложение Errai с mvn gwt: run, я получаю: RuntimeException, вызванное "Неизвестным механизмом аутентификации KEYCLOAK". Я не знаю, как обойти эту проблему.
Неизвестный механизм аутентификации Keycloak
Ответ 1
Вам нужно будет установить и настроить адаптер Wildfly, чтобы ваше приложение Errai распознало метод аутентификации "KEYCLOAK". См. Раздел 7.2 Документация Keycloak.
Ответ 2
Просто хотел добавить немного больше подробностей в ответ @cfsnyder. Чтобы ваш сервер приложений распознал определение в файле web.xml, это выглядит следующим образом:
<login-config>
<auth-method>KEYCLOAK</auth-method>
<realm-name>internal</realm-name>
</login-config>
вам нужно указать jboss (в этом случае), как интерпретировать этот конкретный метод auth. Во время моего ответа это находится в разделе в разделе 8.2 документов Keycloak.
Во-первых, загрузите адаптер keycloak (помните, что это не то же самое, что и Keycloak Server). Затем распакуйте загрузку в домашний каталог wildfly. При запуске вашего сервера приложений используйте следующую команду, чтобы установить конфигурацию Keycloak в соответствующие файлы:
jboss-cli.sh -c --file=adapter-install.cli
Когда этот script завершается, ваш файл конфигурации будет иметь новую запись, добавленную для размещения записи KEYCLOAK
в вашем web.xml. script добавит что-то подобное к 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
, вы должны быть установлены.