@@ -15,7 +15,7 @@ import (
1515 . "github.com/onsi/gomega"
1616 "github.com/pusher/oauth2_proxy/pkg/apis/options"
1717 sessionsapi "github.com/pusher/oauth2_proxy/pkg/apis/sessions"
18− "github.com/pusher/oauth2_proxy/pkg/cookies"
18+ cookiesapi "github.com/pusher/oauth2_proxy/pkg/cookies"
1919 "github.com/pusher/oauth2_proxy/pkg/encryption"
2020 "github.com/pusher/oauth2_proxy/pkg/sessions"
2121 sessionscookie "github.com/pusher/oauth2_proxy/pkg/sessions/cookie"
@@ -79,6 +79,12 @@ var _ = Describe("NewSessionStore", func() {
7979 }
8080 })
8181
82+ It("have the correct SameSite set", func() {
83+ for _, cookie := range cookies {
84+ Expect(cookie.SameSite).To(Equal(cookiesapi.ParseSameSite(cookieOpts.CookieSameSite)))
85+ }
86+ })
87+
8288 It("have a signature timestamp matching session.CreatedAt", func() {
8389 for _, cookie := range cookies {
8490 if cookie.Value != "" {
@@ -159,7 +165,7 @@ var _ = Describe("NewSessionStore", func() {
159165 By("Using a valid cookie with a different providers session encoding")
160166 broken := "BrokenSessionFromADifferentSessionImplementation"
161167 value := encryption.SignedValue(cookieOpts.CookieSecret, cookieOpts.CookieName, broken, time.Now())
162− cookie := cookies.MakeCookieFromOptions(request, cookieOpts.CookieName, value, cookieOpts, cookieOpts.CookieExpire, time.Now())
168+ cookie := cookiesapi.MakeCookieFromOptions(request, cookieOpts.CookieName, value, cookieOpts, cookieOpts.CookieExpire, time.Now())
163169 request.AddCookie(cookie)
164170
165171 err := ss.Save(response, request, session)
@@ -338,6 +344,7 @@ var _ = Describe("NewSessionStore", func() {
338344 CookieSecure: false,
339345 CookieHTTPOnly: false,
340346 CookieDomain: "example.com",
347+ CookieSameSite: "strict",
341348 }
342349
343350 var err error
@@ -379,6 +386,7 @@ var _ = Describe("NewSessionStore", func() {
379386 CookieRefresh: time.Duration(1) * time.Hour,
380387 CookieSecure: true,
381388 CookieHTTPOnly: true,
389+ CookieSameSite: "",
382390 }
383391
384392 session = &sessionsapi.SessionState{