'WARN: Failed to load URLs from https://localhost:8080/realms/Knolx/.well-known/openid-configuration
I am trying to verify the JWT token using KeyCloak but I see the following error when I run the code below. Is this the right way or is there any other way to install the oidc client in keycloak to verify the jwt token? Can anyone help with this?
This is the code that I am trying to execute. It is using keycloak to verify the jwt token. i have created a client and a user in keycloak.
Code
val adapterConfig = new AdapterConfig
adapterConfig.setRealm("Knolx")
adapterConfig.setResource("client-01")
adapterConfig.setAuthServerUrl("https://localhost:8080/")
adapterConfig.setSslRequired("external")
adapterConfig.setVerifyTokenAudience(true)
val credentialMap:Map[String,AnyRef] = Map("secret"->"secret")
adapterConfig.setCredentials(credentialMap.asJava)
adapterConfig.setUseResourceRoleMappings(true)
adapterConfig.setConfidentialPort(0)
val depl = KeycloakDeploymentBuilder.build(adapterConfig)
val tokenToVerify = "token"
try{
val tok = AdapterTokenVerifier.verifyToken(tokenToVerify, depl);
println(tok.getPreferredUsername)
println(tok.getSubject)
}
catch{
case e: VerificationException => println(e)
}
Error
org.keycloak.adapters.KeycloakDeployment resolveUrls
WARN: Failed to load URLs from https://localhost:8080/realms/Knolx/.well-known/openid-configuration
javax.net.ssl.SSLException: Unsupported or unrecognized SSL message
at java.base/sun.security.ssl.SSLSocketInputRecord.handleUnknownRecord(SSLSocketInputRecord.java:451)
at java.base/sun.security.ssl.SSLSocketInputRecord.decode(SSLSocketInputRecord.java:175)
at java.base/sun.security.ssl.SSLTransport.decode(SSLTransport.java:111)
at java.base/sun.security.ssl.SSLSocketImpl.decode(SSLSocketImpl.java:1500)
at java.base/sun.security.ssl.SSLSocketImpl.readHandshakeRecord(SSLSocketImpl.java:1415)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:450)
at java.base/sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:421)
at org.apache.http.conn.ssl.SSLSocketFactory.createLayeredSocket(SSLSocketFactory.java:570)
at org.keycloak.adapters.SniSSLSocketFactory.createLayeredSocket(SniSSLSocketFactory.java:119)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:554)
at org.keycloak.adapters.SniSSLSocketFactory.connectSocket(SniSSLSocketFactory.java:114)
at org.apache.http.conn.ssl.SSLSocketFactory.connectSocket(SSLSocketFactory.java:415)
at org.apache.http.impl.conn.DefaultClientConnectionOperator.openConnection(DefaultClientConnectionOperator.java:180)
at org.apache.http.impl.conn.AbstractPoolEntry.open(AbstractPoolEntry.java:144)
at org.apache.http.impl.conn.AbstractPooledConnAdapter.open(AbstractPooledConnAdapter.java:134)
at org.apache.http.impl.client.DefaultRequestDirector.tryConnect(DefaultRequestDirector.java:605)
at org.apache.http.impl.client.DefaultRequestDirector.execute(DefaultRequestDirector.java:440)
at org.apache.http.impl.client.AbstractHttpClient.doExecute(AbstractHttpClient.java:835)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:83)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:108)
at org.apache.http.impl.client.CloseableHttpClient.execute(CloseableHttpClient.java:56)
at org.keycloak.adapters.KeycloakDeployment.getOidcConfiguration(KeycloakDeployment.java:230)
at org.keycloak.adapters.KeycloakDeployment.resolveUrls(KeycloakDeployment.java:182)
at org.keycloak.adapters.KeycloakDeployment.getRealmInfoUrl(KeycloakDeployment.java:246)
at org.keycloak.adapters.rotation.AdapterTokenVerifier.createVerifier(AdapterTokenVerifier.java:107)
at org.keycloak.adapters.rotation.AdapterTokenVerifier.verifyToken(AdapterTokenVerifier.java:47)
at Playground$.delayedEndpoint$Playground$1(Playground.scala:55)
at Playground$delayedInit$body.apply(Playground.scala:11)
at scala.Function0.apply$mcV$sp(Function0.scala:39)
at scala.Function0.apply$mcV$sp$(Function0.scala:39)
at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:17)
at scala.App.$anonfun$main$1(App.scala:76)
at scala.App.$anonfun$main$1$adapted(App.scala:76)
at scala.collection.IterableOnceOps.foreach(IterableOnce.scala:563)
at scala.collection.IterableOnceOps.foreach$(IterableOnce.scala:561)
at scala.collection.AbstractIterable.foreach(Iterable.scala:926)
at scala.App.main(App.scala:76)
at scala.App.main$(App.scala:74)
at Playground$.main(Playground.scala:11)
at Playground.main(Playground.scala)
org.keycloak.adapters.KeycloakDeployment resolveUrls
WARN: Failed to load URLs from https://localhost:8080/realms/Knolx/.well-known/openid-configuration
javax.net.ssl.SSLException: Unsupported or unrecognized SSL message
at java.base/sun.security.ssl.SSLSocketInputRecord.handleUnknownRecord(SSLSocketInputRecord.java:451)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
