Skip to content

Problems while using refresh_token in OAuth #8

@andreysubbotin

Description

@andreysubbotin
  • Connekt doesn't update refresh_token in storage and uses the old one refresh_token
  • Refresh token endpoint returns response with code != 200, perhaps it's breaks updating refresh token
  • if execute oauth request manually, connekt returns refresh_token_1. But if execute depending query with access token, connekt returns refresh_token_2
  • Sample configuration:
val keycloak by oauth(
    authorizeEndpoint = "[https://test.keycloak.ru/realms/test/protocol/openid-connect/auth](https://test.keycloak.ru/realms/test/protocol/openid-connect/auth)",
    clientId = "test",
    clientSecret = "",
    scope = "openid",
    tokenEndpoint = "[https://test.keycloak.ru/realms/test/protocol/openid-connect/token](https://test.keycloak.ru/realms/test/protocol/openid-connect/token)",
    redirectUri = "http://localhost:8080/callback",
)

Error in logs:

Failed to refresh token
Exception in thread "main" java.lang.RuntimeException: Execution exception
 at io.amplicode.connekt.auth.OAuthRunner.refresh(OAuthRunner.kt:85)
 at io.amplicode.connekt.AuthValueDelegate.getValueImpl(ConnektAuthExtensionsImpl.kt:67)
 at io.amplicode.connekt.AuthValueDelegate.getValueImpl(ConnektAuthExtensionsImpl.kt:46)
 at io.amplicode.connekt.ValueDelegateBase.getValue(ValueDelegateBase.kt:10)
 at Generated_requests_connekt.getKeycloak(generated-requests.connekt.kts:2)
 at Generated_requests_connekt.__result$lambda$4(generated-requests.connekt.kts:90)
 at io.amplicode.connekt.ConnektBuilderImpl.request$lambda$0(ConnektBuilderImpl.kt:49)
 at io.amplicode.connekt.RequestHolder.doExecute(ExecutableWithResult.kt:44)
 at io.amplicode.connekt.RequestHolder.doExecute(ExecutableWithResult.kt:35)
 at io.amplicode.connekt.ExecutableWithResult.execute$connekt_script_definition(ExecutableWithResult.kt:23)
 at io.amplicode.connekt.context.ExecutionContext.execute(ExecutionContext.kt:42)
 at io.amplicode.connekt.context.ExecutionContext.execute(ExecutionContext.kt:54)
 at io.amplicode.connekt.RunScriptKt.runScript(RunScript.kt:73)
 at io.amplicode.connekt.ConnektCommand.run(ConnektCommand.kt:37)
 at com.github.ajalt.clikt.core.CoreCliktCommandKt.parse(CoreCliktCommand.kt:107)
 at com.github.ajalt.clikt.core.CoreCliktCommandKt.main(CoreCliktCommand.kt:78)
 at com.github.ajalt.clikt.core.CoreCliktCommandKt.main(CoreCliktCommand.kt:90)
 at io.amplicode.connekt.EvaluatorKt.main(Evaluator.kt:5)

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions