aboutsummaryrefslogtreecommitdiffstats
path: root/routers/api
diff options
context:
space:
mode:
authorzeripath <art27@cantab.net>2022-12-27 00:34:05 +0000
committerGitHub <noreply@github.com>2022-12-27 08:34:05 +0800
commit83640c449eb6a1b31bc09b1372cc156d114804f8 (patch)
tree091078edf87008c6f9d058c6f8f35c5ce9e97c69 /routers/api
parent814b44aeafda0c31b2600895e66d7ea3d5876ca5 (diff)
downloadgitea-83640c449eb6a1b31bc09b1372cc156d114804f8.tar.gz
gitea-83640c449eb6a1b31bc09b1372cc156d114804f8.zip
Remove ReverseProxy authentication from the API (#22219)
Since we changed the /api/v1/ routes to disallow session authentication we also removed their reliance on CSRF. However, we left the ReverseProxy authentication here - but this means that POSTs to the API are no longer protected by CSRF. Now, ReverseProxy authentication is a kind of session authentication, and is therefore inconsistent with the removal of session from the API. This PR proposes that we simply remove the ReverseProxy authentication from the API and therefore users of the API must explicitly use tokens or basic authentication. Replace #22077 Close #22221 Close #22077 Signed-off-by: Andrew Thornton <art27@cantab.net>
Diffstat (limited to 'routers/api')
-rw-r--r--routers/api/v1/api.go12
1 files changed, 3 insertions, 9 deletions
diff --git a/routers/api/v1/api.go b/routers/api/v1/api.go
index 82ff7ae0be..c12ceacdd3 100644
--- a/routers/api/v1/api.go
+++ b/routers/api/v1/api.go
@@ -230,13 +230,10 @@ func reqExploreSignIn() func(ctx *context.APIContext) {
}
}
-func reqBasicOrRevProxyAuth() func(ctx *context.APIContext) {
+func reqBasicAuth() func(ctx *context.APIContext) {
return func(ctx *context.APIContext) {
- if ctx.IsSigned && setting.Service.EnableReverseProxyAuth && ctx.Data["AuthedMethod"].(string) == auth.ReverseProxyMethodName {
- return
- }
if !ctx.Context.IsBasicAuth {
- ctx.Error(http.StatusUnauthorized, "reqBasicOrRevProxyAuth", "auth required")
+ ctx.Error(http.StatusUnauthorized, "reqBasicAuth", "auth required")
return
}
ctx.CheckForOTP()
@@ -598,9 +595,6 @@ func buildAuthGroup() *auth.Group {
&auth.HTTPSign{},
&auth.Basic{}, // FIXME: this should be removed once we don't allow basic auth in API
)
- if setting.Service.EnableReverseProxyAuth {
- group.Add(&auth.ReverseProxy{})
- }
specialAdd(group)
return group
@@ -690,7 +684,7 @@ func Routes(ctx gocontext.Context) *web.Route {
m.Combo("").Get(user.ListAccessTokens).
Post(bind(api.CreateAccessTokenOption{}), user.CreateAccessToken)
m.Combo("/{id}").Delete(user.DeleteAccessToken)
- }, reqBasicOrRevProxyAuth())
+ }, reqBasicAuth())
}, context_service.UserAssignmentAPI())
})