mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-12-28 14:43:52 +03:00
Revert "[BRANDING] X-Forgejo-OTP can be used instead of X-Gitea-OTP"
This reverts commit 9413fd0274
.
This commit is contained in:
parent
d7e67cf616
commit
a1e6944bd7
4 changed files with 4 additions and 34 deletions
|
@ -197,20 +197,13 @@ func (ctx *APIContext) SetLinkHeader(total, pageSize int) {
|
|||
}
|
||||
}
|
||||
|
||||
func getOtpHeader(header http.Header) string {
|
||||
otpHeader := header.Get("X-Gitea-OTP")
|
||||
if forgejoHeader := header.Get("X-Forgejo-OTP"); forgejoHeader != "" {
|
||||
otpHeader = forgejoHeader
|
||||
}
|
||||
return otpHeader
|
||||
}
|
||||
|
||||
// CheckForOTP validates OTP
|
||||
func (ctx *APIContext) CheckForOTP() {
|
||||
if skip, ok := ctx.Data["SkipLocalTwoFA"]; ok && skip.(bool) {
|
||||
return // Skip 2FA
|
||||
}
|
||||
|
||||
otpHeader := ctx.Req.Header.Get("X-Gitea-OTP")
|
||||
twofa, err := auth.GetTwoFactorByUID(ctx.Doer.ID)
|
||||
if err != nil {
|
||||
if auth.IsErrTwoFactorNotEnrolled(err) {
|
||||
|
@ -219,7 +212,7 @@ func (ctx *APIContext) CheckForOTP() {
|
|||
ctx.Error(http.StatusInternalServerError, "GetTwoFactorByUID", err)
|
||||
return
|
||||
}
|
||||
ok, err := twofa.ValidateTOTP(getOtpHeader(ctx.Req.Header))
|
||||
ok, err := twofa.ValidateTOTP(otpHeader)
|
||||
if err != nil {
|
||||
ctx.Error(http.StatusInternalServerError, "ValidateTOTP", err)
|
||||
return
|
||||
|
|
|
@ -1,23 +0,0 @@
|
|||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package context
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestGetOtpHeader(t *testing.T) {
|
||||
header := http.Header{}
|
||||
assert.EqualValues(t, "", getOtpHeader(header))
|
||||
// Gitea
|
||||
giteaOtp := "123456"
|
||||
header.Set("X-Gitea-OTP", giteaOtp)
|
||||
assert.EqualValues(t, giteaOtp, getOtpHeader(header))
|
||||
// Forgejo has precedence
|
||||
forgejoOtp := "abcdef"
|
||||
header.Set("X-Forgejo-OTP", forgejoOtp)
|
||||
assert.EqualValues(t, forgejoOtp, getOtpHeader(header))
|
||||
}
|
|
@ -56,7 +56,7 @@
|
|||
// description: Sudo API request as the user provided as the key. Admin privileges are required.
|
||||
// TOTPHeader:
|
||||
// type: apiKey
|
||||
// name: X-FORGEJO-OTP
|
||||
// name: X-GITEA-OTP
|
||||
// in: header
|
||||
// description: Must be used in combination with BasicAuth if two-factor authentication is enabled.
|
||||
//
|
||||
|
|
2
templates/swagger/v1_json.tmpl
generated
2
templates/swagger/v1_json.tmpl
generated
|
@ -23138,7 +23138,7 @@
|
|||
"TOTPHeader": {
|
||||
"description": "Must be used in combination with BasicAuth if two-factor authentication is enabled.",
|
||||
"type": "apiKey",
|
||||
"name": "X-FORGEJO-OTP",
|
||||
"name": "X-GITEA-OTP",
|
||||
"in": "header"
|
||||
},
|
||||
"Token": {
|
||||
|
|
Loading…
Reference in a new issue