fix: add new authenrization header
This commit is contained in:
@@ -19,6 +19,7 @@ import (
|
|||||||
"ems.agt/lib/routes"
|
"ems.agt/lib/routes"
|
||||||
"ems.agt/restagent/config"
|
"ems.agt/restagent/config"
|
||||||
"ems.agt/src"
|
"ems.agt/src"
|
||||||
|
"ems.agt/src/framework/middleware"
|
||||||
libSession "ems.agt/src/lib_features/session"
|
libSession "ems.agt/src/lib_features/session"
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
)
|
)
|
||||||
@@ -73,7 +74,8 @@ func HttpListen(addr string, router http.Handler) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func HttpListenTLS(addr, certFile, keyFile string, router http.Handler) {
|
func HttpListenTLS(addr, caFile, certFile, keyFile string, router http.Handler) {
|
||||||
|
HttpListenConfigTLS(addr, caFile, certFile, keyFile, router)
|
||||||
err := http.ListenAndServeTLS(addr, certFile, keyFile, router)
|
err := http.ListenAndServeTLS(addr, certFile, keyFile, router)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("ListenAndServeTLS err:", err)
|
fmt.Println("ListenAndServeTLS err:", err)
|
||||||
@@ -92,6 +94,7 @@ func HttpListenConfigTLS(addr, caFile, certFile, keyFile string, router http.Han
|
|||||||
|
|
||||||
// 创建自定义的TLS配置
|
// 创建自定义的TLS配置
|
||||||
tlsConfig := &tls.Config{
|
tlsConfig := &tls.Config{
|
||||||
|
MinVersion: 1,
|
||||||
ClientCAs: caCertPool,
|
ClientCAs: caCertPool,
|
||||||
ClientAuth: tls.RequireAndVerifyClientCert,
|
ClientAuth: tls.RequireAndVerifyClientCert,
|
||||||
}
|
}
|
||||||
@@ -110,7 +113,8 @@ func HttpListenConfigTLS(addr, caFile, certFile, keyFile string, router http.Han
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func HttpListenWebServerTLS(addr, certFile, keyFile string) {
|
func HttpListenWebServerTLS(addr, caFile, certFile, keyFile string) {
|
||||||
|
HttpListenConfigTLS(addr, caFile, certFile, keyFile, nil)
|
||||||
err := http.ListenAndServeTLS(addr, certFile, keyFile, nil)
|
err := http.ListenAndServeTLS(addr, certFile, keyFile, nil)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fmt.Println("ListenAndServeTLS err:", err)
|
fmt.Println("ListenAndServeTLS err:", err)
|
||||||
@@ -173,6 +177,7 @@ func main() {
|
|||||||
|
|
||||||
// 默认路由组
|
// 默认路由组
|
||||||
defaultUriGroup := app.Group(config.DefaultUriPrefix)
|
defaultUriGroup := app.Group(config.DefaultUriPrefix)
|
||||||
|
defaultUriGroup.Use(middleware.PreAuthorize(nil))
|
||||||
defaultUriGroup.Use(libSession.SessionHeader())
|
defaultUriGroup.Use(libSession.SessionHeader())
|
||||||
defaultUriGroup.Any("/*any", gin.WrapH(routes.NewRouter()))
|
defaultUriGroup.Any("/*any", gin.WrapH(routes.NewRouter()))
|
||||||
// 可配置前缀路由组
|
// 可配置前缀路由组
|
||||||
@@ -188,7 +193,7 @@ func main() {
|
|||||||
if rest.IPv4 != "" {
|
if rest.IPv4 != "" {
|
||||||
listen := rest.IPv4 + ":" + strconv.Itoa(int(rest.Port))
|
listen := rest.IPv4 + ":" + strconv.Itoa(int(rest.Port))
|
||||||
if strings.ToLower(rest.Scheme) == "https" {
|
if strings.ToLower(rest.Scheme) == "https" {
|
||||||
go HttpListenTLS(listen, rest.CertFile, rest.KeyFile, app)
|
go HttpListenTLS(listen, rest.CaFile, rest.CertFile, rest.KeyFile, app)
|
||||||
} else {
|
} else {
|
||||||
go HttpListen(listen, app)
|
go HttpListen(listen, app)
|
||||||
}
|
}
|
||||||
@@ -198,7 +203,7 @@ func main() {
|
|||||||
if rest.IPv6 != "" {
|
if rest.IPv6 != "" {
|
||||||
listenv6 := "[" + rest.IPv6 + "]" + ":" + strconv.Itoa(int(rest.Port))
|
listenv6 := "[" + rest.IPv6 + "]" + ":" + strconv.Itoa(int(rest.Port))
|
||||||
if strings.ToLower(rest.Scheme) == "https" {
|
if strings.ToLower(rest.Scheme) == "https" {
|
||||||
go HttpListenTLS(listenv6, rest.CertFile, rest.KeyFile, app)
|
go HttpListenTLS(listenv6, rest.CaFile, rest.CertFile, rest.KeyFile, app)
|
||||||
} else {
|
} else {
|
||||||
go HttpListen(listenv6, app)
|
go HttpListen(listenv6, app)
|
||||||
}
|
}
|
||||||
@@ -210,7 +215,7 @@ func main() {
|
|||||||
http.Handle("/", fs)
|
http.Handle("/", fs)
|
||||||
for _, listen := range conf.WebServer.Listen {
|
for _, listen := range conf.WebServer.Listen {
|
||||||
if strings.ToLower(listen.Scheme) == "https" {
|
if strings.ToLower(listen.Scheme) == "https" {
|
||||||
go HttpListenWebServerTLS(listen.Addr, listen.CertFile, listen.KeyFile)
|
go HttpListenWebServerTLS(listen.Addr, listen.CaFile, listen.CertFile, listen.KeyFile)
|
||||||
} else {
|
} else {
|
||||||
go HttpListenWebServer(listen.Addr)
|
go HttpListenWebServer(listen.Addr)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user