mirror of
https://github.com/YspCoder/clawgo.git
synced 2026-05-22 04:47:28 +08:00
Restore token auth for cross-origin access
This commit is contained in:
@@ -484,6 +484,9 @@ func (s *Server) checkAuth(r *http.Request) bool {
|
|||||||
if s.isBearerAuthorized(r) {
|
if s.isBearerAuthorized(r) {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
if r != nil && strings.TrimSpace(r.URL.Query().Get("token")) == strings.TrimSpace(s.token) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
if c, err := r.Cookie("clawgo_webui_token"); err == nil && strings.TrimSpace(c.Value) == s.token {
|
if c, err := r.Cookie("clawgo_webui_token"); err == nil && strings.TrimSpace(c.Value) == s.token {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,8 +31,8 @@ func TestCheckAuthAllowsBearerAndCookieOnly(t *testing.T) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
queryReq := httptest.NewRequest(http.MethodGet, "/?token=secret-token", nil)
|
queryReq := httptest.NewRequest(http.MethodGet, "/?token=secret-token", nil)
|
||||||
if srv.checkAuth(queryReq) {
|
if !srv.checkAuth(queryReq) {
|
||||||
t.Fatalf("expected query token auth to fail")
|
t.Fatalf("expected query token auth to succeed")
|
||||||
}
|
}
|
||||||
|
|
||||||
refererReq := httptest.NewRequest(http.MethodGet, "/", nil)
|
refererReq := httptest.NewRequest(http.MethodGet, "/", nil)
|
||||||
|
|||||||
Reference in New Issue
Block a user