From ba57f14611b3a35bc08f01050779f1b4c9fc6090 Mon Sep 17 00:00:00 2001 From: Kjetil Orbekk Date: Fri, 7 Oct 2022 21:31:21 -0400 Subject: Add url encoded cookie --- server/src/auth.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'server/src/auth.rs') diff --git a/server/src/auth.rs b/server/src/auth.rs index ab1ba8b..c5f9e64 100644 --- a/server/src/auth.rs +++ b/server/src/auth.rs @@ -1,7 +1,7 @@ use std::{ env, num::NonZeroUsize, - sync::{Arc, Mutex}, + sync::{Arc, Mutex}, collections::HashMap, }; use lru::LruCache; @@ -12,6 +12,7 @@ use openidconnect::{ AccessTokenHash, AuthenticationFlow, AuthorizationCode, ClientId, ClientSecret, CsrfToken, IssuerUrl, Nonce, OAuth2TokenResponse, PkceCodeChallenge, RedirectUrl, Scope, TokenResponse, }; +use tracing::info; use uuid::Uuid; use serde::{Deserialize, Serialize}; @@ -94,4 +95,11 @@ impl Authenticator { .put(user_id.clone(), LoginState { csrf_token, nonce }); (user_id, auth_url) } + + pub async fn authenticate(&self, user_id: EndUserId, auth_params: HashMap) { + let state = self.login_cache.lock().unwrap().pop(&user_id).unwrap(); + info!("state: {:?}, {:?}", state.csrf_token.secret(), state.nonce.secret()); + + // params: {"session_state": "909b9959-041b-4a98-84d0-5f978bc8a679", "code": "2b4e95d1-0000-4b28-b49d-7a9de731e82b.909b9959-041b-4a98-84d0-5f978bc8a679.a382d869-4e34-42f1-a64d-24a224b9d338", "state": "a7Hff_hF_FOCqPCxmA1ZXg + } } -- cgit v1.2.3