2016-02-29 1 views
1

J'ai une application intégrée avec keycloak. L'application fonctionne sur le serveur Wildfly. J'utilise web.xml pour authentifier keycloak (en tant que configuration de connexion). En dehors de cela, j'utilise le fichier keycloak.json, où je définis les paramètres du domaine keycloak dans l'application. Lorsque j'appelle les pages de l'application, les pages de connexion keycloak s'ouvre, après avoir entré les informations d'identification, il revient à wildfly avec 403 erreur interdite.intégration wildfly avec keycloak 403 erreur interdite

Auparavant, la même configuration fonctionnait, mais maintenant, après avoir activé ssl, je suis confronté à ce problème.

S'il vous plaît aidez-moi à résoudre le problème, nécessite-t-il une autre configuration supplémentaire pour ssl.

Merci, JP

+0

s'il vous plaît changer le niveau de journalisation à 'Trace' et publier toute erreur que vous pourriez obtenir dans le fichier server.log – Shiva

+1

vous pouvez ajouter' disable-trust-manager: true' dans le fichier keycloak.json et vérifier que le certificat ssl pourrait Ne pas être dans le gestionnaire de confiance – Shiva

Répondre

0

Le problème résidait dans la configuration keycloak. Les rôles créés pour mon application n'avaient pas de portée. Après avoir activé le rôle sur l'intégralité du problème, le problème a été résolu.

+0

pouvez-vous élaborer sur plus sur la façon de changer les champs d'application? – krs8888

2

Si c'est le cas que de connexion échoue après SSL a été activé ce serait parce que le certificat SSL n'a pas été dans le truststore et vous pouvez cette exception javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated

Pour cela, vous pouvez désactiver -trust-manager, en ajoutant le suivant dans keycloak.json conf

{ 
    ... 
    "disable-trust-manager": true 
    } 

Si cela résout le problème, alors la bonne façon de le faire sera d'ajouter le certificat au magasin de confiance et spe le cifier dans un fichier keycloak.json comme ça.

{ 
    ... 
    "truststore": "cacerts.jks", 
    "truststore-password" : "password" 
    } 
+0

Mais je ne reçois aucune exception dans le journal. Les appels sont transmis à keycloak. après je me connecte, l'appel revient à wildfly, où je reçois cette interdiction à l'écran. –

+0

@JayapriyaAtheesan: Je recommanderais d'augmenter le niveau de journalisation dans wildfly, puis de vérifier les logs. Quelle est la version de keycloak que vous utilisez? – Shiva

+0

J'utilise keycloak 1.6.0 final. J'ai activé les logs pour le meilleur et tout aussi. mais je ne reçois aucune erreur dans le journal –

0

Étant donné que l'installation a fonctionné sans SSL, un problème lié à la portée peut ne pas entraîner d'erreur 403. Au lieu de cela, la connectivité du serveur d'application client au serveur IDP via le port HTTPS IDP peut être testée en premier (peut utiliser telnet).

Sinon, il peut s'agir d'un problème de vérification de certificat SSL, comme l'a indiqué @Shiva. Juste pour ajouter à cela, idéalement, un certificat CA valide ne peut pas créer de problème de confiance. Dans ce cas, les navigateurs pris en charge et les versions Java pour l'autorité de certification de votre certificat IDP peuvent être vérifiés. La simple mise à niveau vers la dernière version de Java ou l'ajout du certificat racine de l'autorité de certification à votre magasin d'approbations par défaut peut résoudre de tels problèmes. Cela ne nécessitera aucune modification du fichier keycloak.json.

GoDaddy certificate issue example. P.S: Comme je n'ai pas pu ajouter un commentaire, j'ai ajouté ces points ici.