mirror of
https://github.com/restic/rest-server.git
synced 2025-12-07 09:36:13 -08:00
htpasswd file relative to repo
This commit is contained in:
6
auth.go
6
auth.go
@@ -3,11 +3,13 @@ package main
|
|||||||
import (
|
import (
|
||||||
"errors"
|
"errors"
|
||||||
"net/http"
|
"net/http"
|
||||||
|
"path/filepath"
|
||||||
)
|
)
|
||||||
|
|
||||||
func Authorize(r *http.Request) error {
|
func Authorize(r *http.Request, c *Context) error {
|
||||||
|
|
||||||
htpasswd, err := NewHtpasswdFromFile("/tmp/restic/.htpasswd")
|
file := filepath.Join(c.path, ".htpasswd")
|
||||||
|
htpasswd, err := NewHtpasswdFromFile(file)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errors.New("internal server error")
|
return errors.New("internal server error")
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ func (router Router) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
|||||||
|
|
||||||
log.Printf("%s %s", m, u)
|
log.Printf("%s %s", m, u)
|
||||||
|
|
||||||
if err := Authorize(r); err == nil {
|
if err := Authorize(r, &router.Context); err == nil {
|
||||||
if handler := RestAPI(m, u); handler != nil {
|
if handler := RestAPI(m, u); handler != nil {
|
||||||
handler(w, r, &router.Context)
|
handler(w, r, &router.Context)
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user