diff options
author | Kjetil Orbekk <kj@orbekk.com> | 2022-10-02 11:45:42 -0400 |
---|---|---|
committer | Kjetil Orbekk <kj@orbekk.com> | 2022-10-02 11:45:42 -0400 |
commit | f32efae17d04586f36e969c9c2d8f2604eea9747 (patch) | |
tree | 15da43d1644b6990a1ddd3d420d22394b0500b13 /server/src | |
parent | fdafa6d17ea884cc75a0d616899e1db84ae4ba0d (diff) |
Fetch user_info from keycloak
Diffstat (limited to 'server/src')
-rw-r--r-- | server/src/main.rs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/server/src/main.rs b/server/src/main.rs index aa615ea..3c8409a 100644 --- a/server/src/main.rs +++ b/server/src/main.rs @@ -37,9 +37,14 @@ impl User { let cookie = req.cookies().get_private(USER_COOKIE).ok_or( anyhow::anyhow!("no cookie"))?; let user_cookie: UserCookie = serde_json::from_str(cookie.value())?; - let client = keycloak_client.await; - - let token = client.exchange_refresh_token(user_cookie.refresh_token); + let client = keycloak_client().await; + + let token = client.exchange_refresh_token(&user_cookie.refresh_token) + .request_async(async_http_client).await?; + let user_info: CoreUserInfoClaims = client.user_info(token.access_token().clone(), None)? + .request_async(async_http_client) + .await?; + log::info!("Got user_info: {:?}", user_info); Ok(User {}) } } |