From 76529f018a5e55aa157354409ff0af5337783f43 Mon Sep 17 00:00:00 2001
From: jano3 <jano@uafrica.com>
Date: Thu, 8 Dec 2022 14:49:42 +0200
Subject: [PATCH] Mask authorization header for raygun logs

---
 logs/logs.go | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/logs/logs.go b/logs/logs.go
index 75f7d79..ff11fcc 100644
--- a/logs/logs.go
+++ b/logs/logs.go
@@ -3,6 +3,7 @@ package logs
 import (
 	"errors"
 	"fmt"
+	"gitlab.bob.co.za/bob-public-utils/bobgroup-go-utils/utils"
 	"net/http"
 	"net/url"
 	"os"
@@ -230,6 +231,15 @@ func fakeHttpRequest() *http.Request {
 		return nil
 	}
 
+	// Mask authorization header for raygun logs
+	headers := utils.DeepCopy(apiRequest.MultiValueHeaders).(map[string][]string)
+	if len(headers["authorization"]) != 0 {
+		headers["authorization"] = []string{"***"}
+	}
+	if len(headers["Authorization"]) != 0 {
+		headers["Authorization"] = []string{"***"}
+	}
+
 	requestURL := url.URL{
 		Path: apiRequest.Path,
 		Host: apiRequest.Headers["Host"],
@@ -237,7 +247,7 @@ func fakeHttpRequest() *http.Request {
 	request := http.Request{
 		Method: apiRequest.HTTPMethod,
 		URL:    &requestURL,
-		Header: apiRequest.MultiValueHeaders,
+		Header: headers,
 	}
 	return &request
 }
-- 
GitLab