diff --git a/web/settings/clients.go b/web/settings/clients.go index b1098c41615..b458f6d54fc 100644 --- a/web/settings/clients.go +++ b/web/settings/clients.go @@ -129,6 +129,10 @@ func (h *HTTPHandler) synchronized(c echo.Context) error { func (h *HTTPHandler) limitExceeded(c echo.Context) error { inst := middlewares.GetInstance(c) + if !middlewares.IsLoggedIn(c) { + return echo.NewHTTPError(http.StatusUnauthorized, "Error Must be authenticated") + } + redirect := c.QueryParam("redirect") if redirect == "" { redirect = inst.DefaultRedirection().String() diff --git a/web/settings/settings_test.go b/web/settings/settings_test.go index 95317056e6a..712e19ac30a 100644 --- a/web/settings/settings_test.go +++ b/web/settings/settings_test.go @@ -935,6 +935,14 @@ func TestSettings(t *testing.T) { attrs.ValueEqual("ratio_1", "context") }) + t.Run("ClientsLimitExceededWithoutSession", func(t *testing.T) { + e := testutils.CreateTestClient(t, tsURL) + + e.GET("/settings/clients/limit-exceeded"). + WithRedirectPolicy(httpexpect.DontFollowRedirects). + Expect().Status(401) + }) + t.Run("ClientsLimitExceededWithoutLimit", func(t *testing.T) { e := testutils.CreateTestClient(t, tsURL)