forked from TrueCloudLab/frostfs-s3-gw
Add early support of auth middleware
This commit is contained in:
parent
a43c596f49
commit
3ff7028229
6 changed files with 78 additions and 31 deletions
24
cmd/gate/app-new-auth.go
Normal file
24
cmd/gate/app-new-auth.go
Normal file
|
@ -0,0 +1,24 @@
|
|||
package main
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
s3auth "github.com/minio/minio/auth"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
func attachNewUserAuth(router *mux.Router, center *s3auth.Center, log *zap.Logger) {
|
||||
uamw := func(h http.Handler) http.Handler {
|
||||
return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
|
||||
_, err := center.AuthenticationPassed(r.Header)
|
||||
if err != nil {
|
||||
log.Error("failed to pass authentication", zap.Error(err))
|
||||
}
|
||||
// TODO: Handle any auth error by rejecting request.
|
||||
h.ServeHTTP(w, r)
|
||||
|
||||
})
|
||||
}
|
||||
router.Use(uamw)
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue