diff --git a/internal/api/ui/login/login.go b/internal/api/ui/login/login.go index fcda0252d6..9c41bc61e9 100644 --- a/internal/api/ui/login/login.go +++ b/internal/api/ui/login/login.go @@ -130,11 +130,16 @@ func createCSRFInterceptor(cookieName string, csrfCookieKey []byte, externalSecu handler.ServeHTTP(w, r) return } + sameSiteMode := csrf.SameSiteLaxMode + if len(authz.GetInstance(r.Context()).SecurityPolicyAllowedOrigins()) > 0 { + sameSiteMode = csrf.SameSiteNoneMode + } csrf.Protect(csrfCookieKey, csrf.Secure(externalSecure), csrf.CookieName(http_utils.SetCookiePrefix(cookieName, "", path, externalSecure)), csrf.Path(path), csrf.ErrorHandler(errorHandler), + csrf.SameSite(sameSiteMode), )(handler).ServeHTTP(w, r) }) }