2014-12-02 3 views
11

Мне нужна помощь с использованием keycloak в приложении Errai. Я получаю сообщение об ошибке «Неизвестный метод аутентификации» для «KEYCLOAK»? У меня есть приложение keycloak (в другом порту), а приложение Errai имеет KEYCLOAK в файле web.xml внутри WEB-INF Когда я запускаю приложение Errai с mvn gwt: run, я получаю: RuntimeException вызванный «Неизвестный механизм аутентификации KEYCLOAK». Я не знаю, как обойти эту проблему.Keycloak Неизвестный механизм аутентификации

+0

К тому же, если вы только начинаете внедрять приложение, используйте адаптер Spring Security - вы сможете создать файл 'war', который будет работать как на JBoss, так и на Tomcat, например, без установки дополнительного адаптера на сервер. –

ответ

5

Вам необходимо будет установить и настроить адаптер Wildfly, чтобы ваше приложение Errai распознало метод аутентификации «KEYCLOAK». См. Раздел 7.2 раздела Keycloak documentation.

+3

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. – gsamaras

+0

@gsamaras Infact Ссылка теперь указывает на то, что страница не найдена – freedev

+0

@freedev благодарит за это. cfsnyder не могли бы вы изменить? – gsamaras

3

Просто хотел добавить немного подробней к ответу @ 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 Server). Затем распакуйте загрузку в домашний каталог wildfly. С вашим работающим сервером приложений, просто используйте следующую команду, чтобы установить конфигурацию Keycloak в соответствующие файлы:

jboss-cli.sh -c --file=adapter-install.cli 

После завершения этого сценария, файл конфигурация будет новая запись добавлена ​​для размещения 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 , вы должны быть настроены.

Смежные вопросы