diff --git a/lib/gat/handlers/rewrite_password/module.go b/lib/gat/handlers/rewrite_password/module.go
index 4eace0da28bf25917438bbdb242dec03796a7216..7c2345733cd5dad4cc5ccf9b7fb49058c7a6daf7 100644
--- a/lib/gat/handlers/rewrite_password/module.go
+++ b/lib/gat/handlers/rewrite_password/module.go
@@ -28,10 +28,14 @@ func (T *Module) CaddyModule() caddy.ModuleInfo {
 
 func (T *Module) Handle(next gat.Router) gat.Router {
 	return gat.RouterFunc(func(conn *fed.Conn) error {
-		return frontends.Authenticate(
+		if err := frontends.Authenticate(
 			conn,
 			credentials.FromString(conn.User, T.Password),
-		)
+		); err != nil {
+			return err
+		}
+
+		return next.Route(conn)
 	})
 }