Ho bisogno di aiuto per usare il keycloak in un'app di Errai. Viene visualizzato un errore su "metodo di autenticazione sconosciuto" per "KEYCLOAK"? Ho l'appliance keycloak in esecuzione (su una porta diversa) e l'app Errai ha una con KEYCLOAK nel file web.xml all'interno di WEB-INF Quando eseguo l'app Errai con mvn gwt: run, ottengo: RuntimeException causato da "Meccanismo di autenticazione sconosciuto KEYCLOAK". Non ho idea di come aggirare questo problema.Keycloak Meccanismo di autenticazione sconosciuto
risposta
È necessario installare e configurare l'adattatore Wildfly affinché l'app Errai riconosca il metodo di autenticazione "KEYCLOAK". Vedere la sezione 7.2 di Keycloak documentation.
Sebbene questo collegamento possa rispondere alla domanda, è meglio includere qui le parti essenziali della risposta e fornire il link per riferimento. Le risposte di solo collegamento possono diventare non valide se la pagina collegata cambia. – gsamaras
@gsamaras Il link ora punta a una pagina non trovata – freedev
@freedev grazie per averlo indicato. cfsnyder potresti modificare? – gsamaras
Volevo solo aggiungere un ulteriore dettaglio alla risposta di @ cfsnyder. Affinché il server applicazioni di riconoscere una definizione nel web.xml che assomiglia a questo:
<login-config>
<auth-method>KEYCLOAK</auth-method>
<realm-name>internal</realm-name>
</login-config>
avrete bisogno di dire a JBoss (in questo caso) come interpretare quel particolare metodo di autenticazione. Al momento della mia risposta, questo è in section 8.2 of the Keycloak docs.
Primo, download the keycloak adapter (ricordare, questo è non uguale a uguale al server Keycloak). Quindi, decomprimere il download nella home directory di wildfly. Con il server di applicazione in esecuzione, basta usare il seguente comando per installare la configurazione Keycloak nei file appropriati:
jboss-cli.sh -c --file=adapter-install.cli
Quando questo script completato, il file di configurazione avrà la nuova voce aggiunto per accogliere la voce KEYCLOAK
nel web .xml. Lo script aggiungerà qualcosa di simile, o un domain.xml o standalone.xml:
<security-domain name="keycloak">
<authentication>
<login-module code="org.keycloak.adapters.jboss.KeycloakLoginModule" flag="required"/>
</authentication>
</security-domain>
Una volta che hai i file dei moduli Keycloak forniti dalla configurazione del dominio di sicurezza adattatore + per collegare il metodo KEYCLOAK
alla competente LoginModule
, dovresti essere tutto pronto.
Btw, se si sta solo iniziando a implementare la propria applicazione, si consideri l'uso dell'adattatore Spring Security: sarà possibile creare il file 'war' che funzionerà su JBoss e Tomcat, ad esempio, senza installare ulteriori adattatori sul server. –