From 6926764b9155a11cf15d2cf2cad16dff4c5f042b Mon Sep 17 00:00:00 2001 From: Steven Date: Mon, 15 Dec 2025 23:18:30 +0800 Subject: [PATCH] fix: allow unauthenticated CreateUser for first user registration MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add CreateUser to PublicMethods ACL whitelist to fix "authentication required" error during first-time setup. The CreateUser method already has proper security logic that automatically assigns HOST role to the first user and enforces DisallowUserRegistration setting for subsequent users. Fixes #5352 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 --- server/router/api/v1/acl_config.go | 1 + server/router/api/v1/acl_config_test.go | 1 + 2 files changed, 2 insertions(+) diff --git a/server/router/api/v1/acl_config.go b/server/router/api/v1/acl_config.go index 522fd2db6..4569e82b9 100644 --- a/server/router/api/v1/acl_config.go +++ b/server/router/api/v1/acl_config.go @@ -18,6 +18,7 @@ var PublicMethods = map[string]struct{}{ "/memos.api.v1.InstanceService/GetInstanceSetting": {}, // User Service - public user profiles and stats + "/memos.api.v1.UserService/CreateUser": {}, // Allow first user registration "/memos.api.v1.UserService/GetUser": {}, "/memos.api.v1.UserService/GetUserAvatar": {}, "/memos.api.v1.UserService/GetUserStats": {}, diff --git a/server/router/api/v1/acl_config_test.go b/server/router/api/v1/acl_config_test.go index 17f3c240f..7086ce837 100644 --- a/server/router/api/v1/acl_config_test.go +++ b/server/router/api/v1/acl_config_test.go @@ -16,6 +16,7 @@ func TestPublicMethodsArePublic(t *testing.T) { "/memos.api.v1.InstanceService/GetInstanceProfile", "/memos.api.v1.InstanceService/GetInstanceSetting", // User Service + "/memos.api.v1.UserService/CreateUser", "/memos.api.v1.UserService/GetUser", "/memos.api.v1.UserService/GetUserAvatar", "/memos.api.v1.UserService/GetUserStats",