別ドメインで動くLaravel(API)とReact(SPA)をCookie認証で動かそうとして諦めた話。
Laravel 2023/7/20
やりたかったこと
別ドメイン(サブドメインでもなく)で稼働する、LaravelとReactを連携させたかった。ログイン機能を持っているためどのようにセッションを管理するのかを考え、ステートフル(CookieにてセッションIDを持つ)形にしようと思った。
諦めた理由
Cookieを別ドメインに共有しようとした場合はSameSite属性をnoneに設定する必要がある。しかしその場合、Secure属性もセットしなければならない。Secure属性はhttpsを強制するものであり、この設定があるとローカルでテストできなくなる。
対策
Cookieベース(ステートフル)で認証を管理しようとしている時点でフロントエンドとサーバサイドが密接に結びついているのだから、サブドメインで運用することを考える。