fix auth for webapi
This commit is contained in:
parent
f2d806886a
commit
a8804ea02d
@ -1,13 +0,0 @@
|
|||||||
api:
|
|
||||||
addr: :18080
|
|
||||||
accesslog: true
|
|
||||||
pathPrefix: /api
|
|
||||||
auth:
|
|
||||||
username: gost
|
|
||||||
password: gost
|
|
||||||
auther: auther-0
|
|
||||||
authers:
|
|
||||||
- name: auther-0
|
|
||||||
auths:
|
|
||||||
- username: gost1
|
|
||||||
password: gost1
|
|
@ -2,9 +2,6 @@ package api
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"embed"
|
"embed"
|
||||||
"net/http"
|
|
||||||
|
|
||||||
"github.com/gin-gonic/gin"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
@ -12,39 +9,6 @@ var (
|
|||||||
swaggerDoc embed.FS
|
swaggerDoc embed.FS
|
||||||
)
|
)
|
||||||
|
|
||||||
func register(r *gin.RouterGroup) {
|
|
||||||
r.StaticFS("/docs", http.FS(swaggerDoc))
|
|
||||||
|
|
||||||
config := r.Group("/config")
|
|
||||||
{
|
|
||||||
config.GET("", getConfig)
|
|
||||||
|
|
||||||
config.POST("/services", createService)
|
|
||||||
config.PUT("/services/:service", updateService)
|
|
||||||
config.DELETE("/services/:service", deleteService)
|
|
||||||
|
|
||||||
config.POST("/chains", createChain)
|
|
||||||
config.PUT("/chains/:chain", updateChain)
|
|
||||||
config.DELETE("/chains/:chain", deleteChain)
|
|
||||||
|
|
||||||
config.POST("/authers", createAuther)
|
|
||||||
config.PUT("/authers/:auther", updateAuther)
|
|
||||||
config.DELETE("/authers/:auther", deleteAuther)
|
|
||||||
|
|
||||||
config.POST("/bypasses", createBypass)
|
|
||||||
config.PUT("/bypasses/:bypass", updateBypass)
|
|
||||||
config.DELETE("/bypasses/:bypass", deleteBypass)
|
|
||||||
|
|
||||||
config.POST("/resolvers", createResolver)
|
|
||||||
config.PUT("/resolvers/:resolver", updateResolver)
|
|
||||||
config.DELETE("/resolvers/:resolver", deleteResolver)
|
|
||||||
|
|
||||||
config.POST("/hosts", createHosts)
|
|
||||||
config.PUT("/hosts/:hosts", updateHosts)
|
|
||||||
config.DELETE("/hosts/:hosts", deleteHosts)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
type Response struct {
|
type Response struct {
|
||||||
Code int `json:"code,omitempty"`
|
Code int `json:"code,omitempty"`
|
||||||
Msg string `json:"msg,omitempty"`
|
Msg string `json:"msg,omitempty"`
|
||||||
|
@ -65,15 +65,17 @@ func NewServer(addr string, opts ...Option) (*Server, error) {
|
|||||||
if options.accessLog {
|
if options.accessLog {
|
||||||
r.Use(mwLogger())
|
r.Use(mwLogger())
|
||||||
}
|
}
|
||||||
if options.auther != nil {
|
|
||||||
r.Use(mwBasicAuth(options.auther))
|
|
||||||
}
|
|
||||||
|
|
||||||
router := r.Group("")
|
router := r.Group("")
|
||||||
if options.pathPrefix != "" {
|
if options.pathPrefix != "" {
|
||||||
router = router.Group(options.pathPrefix)
|
router = router.Group(options.pathPrefix)
|
||||||
}
|
}
|
||||||
register(router)
|
|
||||||
|
router.StaticFS("/docs", http.FS(swaggerDoc))
|
||||||
|
|
||||||
|
config := router.Group("/config")
|
||||||
|
config.Use(mwBasicAuth(options.auther))
|
||||||
|
registerConfig(config)
|
||||||
|
|
||||||
return &Server{
|
return &Server{
|
||||||
s: &http.Server{
|
s: &http.Server{
|
||||||
@ -94,3 +96,31 @@ func (s *Server) Addr() net.Addr {
|
|||||||
func (s *Server) Close() error {
|
func (s *Server) Close() error {
|
||||||
return s.s.Close()
|
return s.s.Close()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func registerConfig(config *gin.RouterGroup) {
|
||||||
|
config.GET("", getConfig)
|
||||||
|
|
||||||
|
config.POST("/services", createService)
|
||||||
|
config.PUT("/services/:service", updateService)
|
||||||
|
config.DELETE("/services/:service", deleteService)
|
||||||
|
|
||||||
|
config.POST("/chains", createChain)
|
||||||
|
config.PUT("/chains/:chain", updateChain)
|
||||||
|
config.DELETE("/chains/:chain", deleteChain)
|
||||||
|
|
||||||
|
config.POST("/authers", createAuther)
|
||||||
|
config.PUT("/authers/:auther", updateAuther)
|
||||||
|
config.DELETE("/authers/:auther", deleteAuther)
|
||||||
|
|
||||||
|
config.POST("/bypasses", createBypass)
|
||||||
|
config.PUT("/bypasses/:bypass", updateBypass)
|
||||||
|
config.DELETE("/bypasses/:bypass", deleteBypass)
|
||||||
|
|
||||||
|
config.POST("/resolvers", createResolver)
|
||||||
|
config.PUT("/resolvers/:resolver", updateResolver)
|
||||||
|
config.DELETE("/resolvers/:resolver", deleteResolver)
|
||||||
|
|
||||||
|
config.POST("/hosts", createHosts)
|
||||||
|
config.PUT("/hosts/:hosts", updateHosts)
|
||||||
|
config.DELETE("/hosts/:hosts", deleteHosts)
|
||||||
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user