Furumi: Added web ui with OIDC SSO
All checks were successful
Build and Publish Deb Package / build-deb (push) Successful in 59s
Publish Server Image / build-and-push-image (push) Successful in 4m28s

This commit is contained in:
Ultradesu
2026-03-17 14:53:16 +00:00
parent a17ff322ad
commit 0f49d8d079
7 changed files with 17 additions and 11 deletions

10
Cargo.lock generated
View File

@@ -910,7 +910,7 @@ checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c"
[[package]]
name = "furumi-client-core"
version = "0.2.1"
version = "0.3.0"
dependencies = [
"anyhow",
"async-trait",
@@ -932,7 +932,7 @@ dependencies = [
[[package]]
name = "furumi-common"
version = "0.2.1"
version = "0.3.0"
dependencies = [
"prost",
"protobuf-src",
@@ -942,7 +942,7 @@ dependencies = [
[[package]]
name = "furumi-mount-linux"
version = "0.2.1"
version = "0.3.0"
dependencies = [
"anyhow",
"clap",
@@ -959,7 +959,7 @@ dependencies = [
[[package]]
name = "furumi-mount-macos"
version = "0.2.1"
version = "0.3.0"
dependencies = [
"anyhow",
"async-trait",
@@ -977,7 +977,7 @@ dependencies = [
[[package]]
name = "furumi-server"
version = "0.2.1"
version = "0.3.0"
dependencies = [
"anyhow",
"async-stream",

View File

@@ -1,6 +1,6 @@
[package]
name = "furumi-client-core"
version = "0.3.0"
version = "0.3.1"
edition = "2024"
[dependencies]

View File

@@ -1,6 +1,6 @@
[package]
name = "furumi-common"
version = "0.3.0"
version = "0.3.1"
edition = "2024"
[dependencies]

View File

@@ -1,6 +1,6 @@
[package]
name = "furumi-mount-linux"
version = "0.3.0"
version = "0.3.1"
edition = "2024"
[dependencies]

View File

@@ -1,6 +1,6 @@
[package]
name = "furumi-mount-macos"
version = "0.3.0"
version = "0.3.1"
edition = "2024"
[dependencies]

View File

@@ -1,6 +1,6 @@
[package]
name = "furumi-server"
version = "0.3.0"
version = "0.3.1"
edition = "2024"
[dependencies]

View File

@@ -295,7 +295,13 @@ pub async fn oidc_callback(
let token_response = match token_response {
Ok(tr) => tr,
Err(e) => return (StatusCode::INTERNAL_SERVER_ERROR, format!("OIDC error: {}", e)).into_response(),
Err(e) => {
tracing::error!("OIDC exchange code error: {:?}", e);
if let openidconnect::RequestTokenError::ServerResponse(err) = &e {
tracing::error!("OIDC Server returned error: {:?}", err);
}
return (StatusCode::INTERNAL_SERVER_ERROR, format!("OIDC error: {}", e)).into_response();
}
};
let id_token = match token_response.id_token() {