|
@@ -2,9 +2,9 @@ package webhooks
|
|
|
|
|
|
|
|
import (
|
|
import (
|
|
|
"crypto/hmac"
|
|
"crypto/hmac"
|
|
|
- "crypto/subtle"
|
|
|
|
|
"crypto/sha1"
|
|
"crypto/sha1"
|
|
|
"crypto/sha256"
|
|
"crypto/sha256"
|
|
|
|
|
+ "crypto/subtle"
|
|
|
"encoding/hex"
|
|
"encoding/hex"
|
|
|
"net/http"
|
|
"net/http"
|
|
|
"strings"
|
|
"strings"
|
|
@@ -123,14 +123,6 @@ func (v *AuthVerifier) verifyBasic(r *http.Request) bool {
|
|
|
return false
|
|
return false
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-import (
|
|
|
|
|
- "crypto/subtle"
|
|
|
|
|
- // ... existing imports
|
|
|
|
|
-)
|
|
|
|
|
-
|
|
|
|
|
-func (v *AuthVerifier) verifyBasic(r *http.Request) bool {
|
|
|
|
|
- // ... existing checks ...
|
|
|
|
|
-
|
|
|
|
|
parts := strings.SplitN(v.config.Secret, ":", 2)
|
|
parts := strings.SplitN(v.config.Secret, ":", 2)
|
|
|
if len(parts) == 2 {
|
|
if len(parts) == 2 {
|
|
|
usernameMatch := subtle.ConstantTimeCompare([]byte(username), []byte(parts[0]))
|
|
usernameMatch := subtle.ConstantTimeCompare([]byte(username), []byte(parts[0]))
|
|
@@ -140,4 +132,3 @@ func (v *AuthVerifier) verifyBasic(r *http.Request) bool {
|
|
|
|
|
|
|
|
return subtle.ConstantTimeCompare([]byte(password), []byte(v.config.Secret)) == 1
|
|
return subtle.ConstantTimeCompare([]byte(password), []byte(v.config.Secret)) == 1
|
|
|
}
|
|
}
|
|
|
-}
|
|
|