secret code middleware for migration

This commit is contained in:
Fran Jurmanović
2021-05-25 21:47:53 +02:00
parent 8a9759f66e
commit a04b786538
3 changed files with 35 additions and 4 deletions

View File

@@ -0,0 +1,30 @@
package middleware
import (
"os"
"wallet-api/pkg/models"
"wallet-api/pkg/utl/configs"
"github.com/gin-gonic/gin"
)
func SecretCode(c *gin.Context) {
exceptionReturn := new(models.Exception)
secretCode := ExtractCode(c)
secret := os.Getenv("SECRET_CODE")
if secret == "" {
secret = configs.SecretCode
}
if secret != secretCode {
exceptionReturn.ErrorCode = "401101"
exceptionReturn.StatusCode = 401
exceptionReturn.Message = "Invalid secret code"
c.AbortWithStatusJSON(exceptionReturn.StatusCode, exceptionReturn)
}
c.Next()
}
func ExtractCode(c *gin.Context) string {
secret := c.GetHeader("SECRET_CODE")
return secret
}