diff --git a/cmd/apiserver/main.go b/cmd/apiserver/main.go index 33a152ed3..b1ed8fb21 100644 --- a/cmd/apiserver/main.go +++ b/cmd/apiserver/main.go @@ -20,7 +20,6 @@ import ( "context" "crypto/sha1" "fmt" - "net/http" "os" "strconv" @@ -182,7 +181,7 @@ func realMain(ctx context.Context) error { sub := r.PathPrefix("/api/verify").Subrouter() sub.Use(requireAPIKey) sub.Use(processFirewall) - sub.Use(processChaff(verifyChaffTracker)) + sub.Use(middleware.ProcessChaff(db, verifyChaffTracker)) sub.Use(rateLimit) // POST /api/verify @@ -197,7 +196,7 @@ func realMain(ctx context.Context) error { sub := r.PathPrefix("/api/certificate").Subrouter() sub.Use(requireAPIKey) sub.Use(processFirewall) - sub.Use(processChaff(certChaffTracker)) + sub.Use(middleware.ProcessChaff(db, certChaffTracker)) sub.Use(rateLimit) // POST /api/certificate @@ -216,14 +215,6 @@ func realMain(ctx context.Context) error { return srv.ServeHTTPHandler(ctx, handlers.CombinedLoggingHandler(os.Stdout, r)) } -func processChaff(t *chaff.Tracker) mux.MiddlewareFunc { - detector := chaff.HeaderDetector("X-Chaff") - - return func(next http.Handler) http.Handler { - return t.HandleTrack(detector, next) - } -} - // makePadFromChaff makes a Padding structure from chaff data. // Note, the random chaff data will be longer than necessary, so we shorten it. func makePadFromChaff(s string) api.Padding { diff --git a/cmd/server/assets/realmadmin/show.html b/cmd/server/assets/realmadmin/show.html index 1e0a7080f..4f7829090 100644 --- a/cmd/server/assets/realmadmin/show.html +++ b/cmd/server/assets/realmadmin/show.html @@ -36,6 +36,23 @@

Realm stats

+
+
+ + Daily active users + ? +
+
+

Loading chart...

+
+ + Export as: + CSV + JSON + +
+
@@ -84,6 +101,7 @@

Realm stats