diff auth/middleware.go @ 226:63dd5216eee4

Refactored gemma server to be more REST-like.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Thu, 26 Jul 2018 12:24:30 +0200
parents 0c56c56a1c44
children 8a226dc1c6ff
line wrap: on
line diff
--- a/auth/middleware.go	Wed Jul 25 18:26:54 2018 +0200
+++ b/auth/middleware.go	Thu Jul 26 12:24:30 2018 +0200
@@ -73,3 +73,9 @@
 		return false
 	}
 }
+
+func EnsureRole(name string) func(func(http.ResponseWriter, *http.Request)) http.Handler {
+	return func(fn func(http.ResponseWriter, *http.Request)) http.Handler {
+		return SessionMiddleware(SessionChecker(http.HandlerFunc(fn), HasRole(name)))
+	}
+}