Add Certificates page and Traefik API frontend client
This commit is contained in:
parent
9e4c612dcb
commit
7fc90524b5
40 changed files with 6585 additions and 359 deletions
|
|
@ -165,11 +165,16 @@ func RequireRole(allowedRoles ...string) gin.HandlerFunc {
|
|||
}
|
||||
|
||||
func CORSMiddleware(allowedOrigin string) gin.HandlerFunc {
|
||||
// Reject wildcard when credentials are enabled — browsers will block it anyway.
|
||||
// Only the explicitly configured origin is allowed.
|
||||
isWildcard := allowedOrigin == "*"
|
||||
return func(c *gin.Context) {
|
||||
origin := c.Request.Header.Get("Origin")
|
||||
if origin == allowedOrigin || allowedOrigin == "*" {
|
||||
if !isWildcard && origin != "" && origin == allowedOrigin {
|
||||
c.Header("Access-Control-Allow-Origin", origin)
|
||||
c.Header("Vary", "Origin")
|
||||
}
|
||||
// Explicitly do not set Access-Control-Allow-Origin to "*" when credentials are true
|
||||
c.Header("Access-Control-Allow-Methods", "GET, POST, PUT, PATCH, DELETE, OPTIONS")
|
||||
c.Header("Access-Control-Allow-Headers", "Content-Type, Authorization, X-CSRF-Token")
|
||||
c.Header("Access-Control-Allow-Credentials", "true")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue