Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-pages.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfeistel <6742251-feistel@users.noreply.gitlab.com>2021-09-16 19:18:54 +0300
committerfeistel <6742251-feistel@users.noreply.gitlab.com>2021-09-16 19:19:13 +0300
commit08d70aef345f1811f13cc990529f5114ccf3a92e (patch)
tree28aa7e492067703dd6b214a3d363292fd645ddca /internal/auth
parentfecd9ca44bfc63e82f1cb2fde515b1e348678f7e (diff)
refactor: move middlewares to corresponding packages
Diffstat (limited to 'internal/auth')
-rw-r--r--internal/auth/middleware.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/internal/auth/middleware.go b/internal/auth/middleware.go
new file mode 100644
index 00000000..263e48b8
--- /dev/null
+++ b/internal/auth/middleware.go
@@ -0,0 +1,18 @@
+package auth
+
+import (
+ "net/http"
+
+ "gitlab.com/gitlab-org/gitlab-pages/internal/source"
+)
+
+// NewMiddleware returns middleware which handles authentication requests
+func NewMiddleware(handler http.Handler, a *Auth, s source.Source) http.Handler {
+ return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
+ if a.TryAuthenticate(w, r, s) {
+ return
+ }
+
+ handler.ServeHTTP(w, r)
+ })
+}