From 41796fd7682e5b599ec002ac918d10c267dbcece Mon Sep 17 00:00:00 2001 From: phoenix Date: Wed, 6 Aug 2025 18:51:14 -0400 Subject: [PATCH] tsk-51: Changes made related to icarus_models --- src/callers/login.rs | 4 ++-- src/token_stuff/mod.rs | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/callers/login.rs b/src/callers/login.rs index 1e84e97..11fc6a4 100644 --- a/src/callers/login.rs +++ b/src/callers/login.rs @@ -78,7 +78,7 @@ pub mod endpoint { if hashing::verify_password(&payload.password, user.password.clone()).unwrap() { // Create token let key = icarus_envy::environment::get_secret_key().await; - let (token_literal, duration) = token_stuff::create_token(&key).unwrap(); + let (token_literal, duration) = token_stuff::create_token(&key, &user.id).unwrap(); if token_stuff::verify_token(&key, &token_literal) { let current_time = time::OffsetDateTime::now_utc(); @@ -122,7 +122,7 @@ pub mod endpoint { match repo::service::valid_passphrase(&pool, &payload.passphrase).await { Ok((id, _passphrase, _date_created)) => { let key = icarus_envy::environment::get_secret_key().await; - let (token_literal, duration) = token_stuff::create_service_token(&key).unwrap(); + let (token_literal, duration) = token_stuff::create_service_token(&key, &id).unwrap(); if token_stuff::verify_token(&key, &token_literal) { let login_result = icarus_models::login_result::LoginResult { diff --git a/src/token_stuff/mod.rs b/src/token_stuff/mod.rs index 241216a..a9d2647 100644 --- a/src/token_stuff/mod.rs +++ b/src/token_stuff/mod.rs @@ -20,20 +20,22 @@ pub fn get_expiration(issued: &time::OffsetDateTime) -> Result Result<(String, i64), josekit::JoseError> { +pub fn create_token(provided_key: &String, id: &uuid::Uuid) -> Result<(String, i64), josekit::JoseError> { let resource = icarus_models::token::TokenResource { message: String::from(MESSAGE), issuer: String::from(ISSUER), audiences: vec![String::from(AUDIENCE)], + id: *id, }; icarus_models::token::create_token(provided_key, &resource, time::Duration::hours(4)) } -pub fn create_service_token(provided: &String) -> Result<(String, i64), josekit::JoseError> { +pub fn create_service_token(provided: &String, id: &uuid::Uuid) -> Result<(String, i64), josekit::JoseError> { let resource = icarus_models::token::TokenResource { message: String::from("Service random"), issuer: String::from(ISSUER), audiences: vec![String::from(AUDIENCE)], + id: *id, }; icarus_models::token::create_token(provided, &resource, time::Duration::hours(1)) }