fix (api): api key validation

This commit is contained in:
Stéphane Lam 2023-10-30 17:43:47 -04:00 committed by GitHub
parent afc687b0a6
commit 3c379d50ee
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 5 additions and 5 deletions

View file

@ -23,7 +23,7 @@ git clone https://github.com/mickael-kerjean/filestash
cd filestash
# Install dependencies
npm install # frontend dependencies
npm install --legacy-peer-deps # frontend dependencies
make build_init # install the required static libraries
mkdir -p ./dist/data/state/
cp -R config ./dist/data/state/

View file

@ -8,20 +8,20 @@ import (
func VerifyApiKey(api_key string) (host string, err error) {
isApiEnabled := Config.Get("features.api.enable").Bool()
apiKey := Config.Get("feature.api.api_key").String()
allowedApiKeys := Config.Get("features.api.api_key").String()
if isApiEnabled == false {
return "", NewError("Api is not enabled", 503)
} else if apiKey == os.Getenv("API_KEY") {
} else if api_key == os.Getenv("API_KEY") {
return "*", nil
}
lines := strings.Split(apiKey, "\n")
lines := strings.Split(allowedApiKeys, "\n")
for _, line := range lines {
line = regexp.MustCompile(` #.*`).ReplaceAllString(line, "") // remove comment
chunks := strings.SplitN(line, " ", 2)
if len(chunks) == 0 {
continue
} else if chunks[0] != apiKey {
} else if chunks[0] != api_key {
continue
}
if len(chunks) == 1 {