Compare commits

..

No commits in common. "57a3777891a2e3b7e8e257c3f3d76dca540059dd" and "e2cd445aebef1473e23dbd50e90bf32917bdc8c8" have entirely different histories.

3 changed files with 4 additions and 22 deletions

22
main.go
View File

@ -1,34 +1,20 @@
package main
import (
"crypto/sha256"
"crypto/subtle"
"flag"
"log"
"git.odit.services/lfk/document-server/docs" // Correct import path for docs
"git.odit.services/lfk/document-server/handlers"
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/keyauth"
"github.com/gofiber/swagger"
)
var (
port = flag.String("port", ":3000", "Port to listen on")
prod = flag.Bool("prod", false, "Enable prefork in Production")
apiKey = flag.String("apikey", "lfk", "API key for incoming authentication")
port = flag.String("port", ":3000", "Port to listen on")
prod = flag.Bool("prod", false, "Enable prefork in Production")
)
func validateAPIKey(c *fiber.Ctx, key string) (bool, error) {
hashedAPIKey := sha256.Sum256([]byte(*apiKey))
hashedKey := sha256.Sum256([]byte(key))
if subtle.ConstantTimeCompare(hashedAPIKey[:], hashedKey[:]) == 1 {
return true, nil
}
return false, keyauth.ErrMissingOrMalformedAPIKey
}
// @title LfK Document Server API
// @description This is the API documentation for the LfK Document Server - a tool for pdf generation.
func main() {
@ -44,10 +30,6 @@ func main() {
app.Get("/swagger/*", swagger.HandlerDefault)
v1 := app.Group("/v1")
v1.Use(keyauth.New(keyauth.Config{
KeyLookup: "header:Authorization",
Validator: validateAPIKey,
}))
v1.Get("/", func(c *fiber.Ctx) error {
return c.SendString("Hello, World!")

View File

@ -12,7 +12,7 @@
box-sizing: border-box;
page-break-after: always;
padding: 1.2cm 2cm 1.2cm 2cm;
background-image: url("data:image/png;base64,{{ loadImage "certificate_background" }}");
background-image: url("data:image/png;base64,{{ loadImage 'certificate_background' }}");
background-repeat: no-repeat;
background-size: 11cm;
background-position: 5cm 5cm;

View File

@ -12,7 +12,7 @@
box-sizing: border-box;
page-break-after: always;
padding: 1.2cm 2cm 1.2cm 2cm;
background-image: url("data:image/png;base64,{{ loadImage "certificate_background" }}");
background-image: url("data:image/png;base64,{{ loadImage 'certificate_background' }}");
background-repeat: no-repeat;
background-size: 11cm;
background-position: 5cm 5cm;