diff --git a/controller/http.go b/controller/http.go
index dae22922bde93e023810c80a2e2ea26c6851758d..1261577acfdd0a70e1e6053acfaebda154467d64 100644
--- a/controller/http.go
+++ b/controller/http.go
@@ -42,7 +42,9 @@ func run() error {
 
 	// Register gRPC server endpoint
 	// Note: Make sure the gRPC server is running properly and accessible
-	mux := runtime.NewServeMux()
+	mux := runtime.NewServeMux(
+		runtime.WithIncomingHeaderMatcher(customHeaderMatcher),
+	)
 
 	err := registerHttpHandler(mux)
 
@@ -162,3 +164,14 @@ func metricsHandler(mux *runtime.ServeMux) error {
 
 	return nil
 }
+
+// customHeaderMatcher passes custom key-value pairs within headers to be added to the outgoing context of gRPC-Gateway.
+// Use "authorize: token" in header for authorization after login.
+func customHeaderMatcher(key string) (string, bool) {
+	switch key {
+	case "Authorize":
+		return key, true
+	default:
+		return runtime.DefaultHeaderMatcher(key)
+	}
+}