Files
wonderwall/pkg/middleware/cors.go
2023-02-23 14:30:55 +01:00

27 lines
522 B
Go

package middleware
import (
"fmt"
"net/http"
"strings"
"github.com/rs/cors"
"github.com/nais/wonderwall/pkg/config"
)
func Cors(cfg *config.Config) *cors.Cors {
ssoDomain := strings.TrimPrefix(cfg.SSO.Domain, ".")
allowedOrigins := []string{
fmt.Sprintf("https://*.%s", ssoDomain),
fmt.Sprintf("https://%s", ssoDomain),
}
return cors.New(cors.Options{
AllowedOrigins: allowedOrigins,
AllowedMethods: []string{http.MethodGet, http.MethodPost, http.MethodOptions},
AllowCredentials: true,
})
}