From d098c57d4d768996cf780ea44120e6b0642e16f6 Mon Sep 17 00:00:00 2001 From: Timothy Jaeryang Baek Date: Wed, 10 Dec 2025 17:00:28 -0500 Subject: [PATCH] refac --- backend/open_webui/routers/knowledge.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/backend/open_webui/routers/knowledge.py b/backend/open_webui/routers/knowledge.py index be56e3cfc..4a1a5f01d 100644 --- a/backend/open_webui/routers/knowledge.py +++ b/backend/open_webui/routers/knowledge.py @@ -58,7 +58,10 @@ async def get_knowledge(user=Depends(get_verified_user)): KnowledgeAccessResponse( **knowledge_base.model_dump(), files=Knowledges.get_file_metadatas_by_id(knowledge_base.id), - write_access=has_access(user.id, "write", knowledge_base.access_control), + write_access=( + user.id == knowledge_base.user_id + or has_access(user.id, "write", knowledge_base.access_control) + ), ) for knowledge_base in knowledge_bases ] @@ -77,7 +80,10 @@ async def get_knowledge_list(user=Depends(get_verified_user)): KnowledgeAccessResponse( **knowledge_base.model_dump(), files=Knowledges.get_file_metadatas_by_id(knowledge_base.id), - write_access=has_access(user.id, "write", knowledge_base.access_control), + write_access=( + user.id == knowledge_base.user_id + or has_access(user.id, "write", knowledge_base.access_control) + ), ) for knowledge_base in knowledge_bases ] @@ -210,7 +216,10 @@ async def get_knowledge_by_id(id: str, user=Depends(get_verified_user)): return KnowledgeFilesResponse( **knowledge.model_dump(), files=Knowledges.get_file_metadatas_by_id(knowledge.id), - write_access=has_access(user.id, "write", knowledge.access_control), + write_access=( + user.id == knowledge.user_id + or has_access(user.id, "write", knowledge.access_control) + ), ) else: raise HTTPException(