diff --git a/src/webserver_main.cpp b/src/webserver_main.cpp
index cf8500f..949bdc1 100644
--- a/src/webserver_main.cpp
+++ b/src/webserver_main.cpp
@@ -1,9 +1,7 @@
-#include <webassets.hpp>
 #include <web_kvm.hpp>
+#include <webassets.hpp>
 #include "ssl_key_handler.hpp"
 
-#include <crow/bmc_app_type.hpp>
-
 #include "crow/app.h"
 #include "crow/ci_map.h"
 #include "crow/common.h"
@@ -26,15 +24,15 @@
 #include "crow/utility.h"
 #include "crow/websocket.h"
 
-
 #include "color_cout_g3_sink.hpp"
 #include "webassets.hpp"
 
+#include "security_headers_middleware.hpp"
+#include "token_authorization_middleware.hpp"
 
 #include <boost/asio.hpp>
 #include <boost/endian/arithmetic.hpp>
 
-
 #include <iostream>
 #include <memory>
 #include <string>
@@ -52,13 +50,13 @@
   std::string ssl_pem_file("server.pem");
   ensuressl::ensure_openssl_key_present_and_valid(ssl_pem_file);
 
-  BmcAppType app;
+  crow::App<crow::TokenAuthorizationMiddleware, crow::SecurityHeadersMiddleware>
+      app;
 
   crow::webassets::request_routes(app);
   crow::kvm::request_routes(app);
 
   crow::logger::setLogLevel(crow::LogLevel::INFO);
-  app.debug_print();
   CROW_ROUTE(app, "/systeminfo")
   ([]() {
 
@@ -112,7 +110,7 @@
         size_t len =
             socket.receive_from(boost::asio::buffer(recv_buf), sender_endpoint);
         // TODO(ed) THis is ugly.  Find a way to not make a copy (ie, use
-        // std::string::data() to 
+        // std::string::data() to
         std::string str(std::begin(recv_buf), std::end(recv_buf));
         LOG(DEBUG) << "Got " << str << "back \n";
         conn.send_binary(str);
