From c9ff4639a56c19b1313fd72c7d26966f1bec5708 Mon Sep 17 00:00:00 2001 From: Ruben Fiszel Date: Fri, 24 Mar 2023 14:55:56 +0100 Subject: [PATCH] improve require super_admin check error --- backend/windmill-api/src/utils.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/backend/windmill-api/src/utils.rs b/backend/windmill-api/src/utils.rs index d0f6d1f652..be1757964f 100644 --- a/backend/windmill-api/src/utils.rs +++ b/backend/windmill-api/src/utils.rs @@ -20,9 +20,11 @@ pub async fn require_super_admin<'c>( return Ok(()); } let is_admin = sqlx::query_scalar!("SELECT super_admin FROM password WHERE email = $1", email) - .fetch_one(db) + .fetch_optional(db) .await - .map_err(|e| Error::InternalErr(format!("fetching super admin: {e}")))?; + .map_err(|e| Error::InternalErr(format!("fetching super admin: {e}")))? + .unwrap_or(false); + if !is_admin { Err(Error::NotAuthorized( "This endpoint require caller to be a super admin".to_owned(),