以前の Auth0 では、
samesite Cookie 属性のオプションは true、false、strict、lax でした。この属性を手動で設定しない場合、Auth0 では既定値として false が使用されていました。
2020 年 2 月以降、Google Chrome v80 では Cookie の処理方法が変更されました。これを受けて、Auth0 では Cookie の処理方法に次の変更を実装しました。samesite属性が設定されていない Cookie は、laxに設定されます。sameSite=noneが設定された Cookie はセキュアである必要があります。そうでない場合、ブラウザーの cookie jar に保存できません。
- 保存できるセッション情報の量に制限がありません。
- ユーザーのセッションを簡単に無効化できます。データベースからレコードを削除するだけです。
- セッションデータを保存するためのデータベースが必要です (ただし、ほとんどの Web アプリケーションではすでに使用されています) 。
- ユーザーが送信する HTTP リクエストごとに、セッションの読み取り (場合によっては書き込み) のためにデータベースへのアクセスが必要になるため、レイテンシーが増加します。
- ユーザー数が多く、それに伴ってデータベースの読み取り/書き込みも増えると、スケーリングが難しくなることがあります。
- 容易に実装でき、特別なバックエンドも不要です。
- データベースを呼び出す必要がないため、レイテンシを低減できます。
- スケールしやすくなります。
- Cookie にはサイズ制限があるため (ほとんどのブラウザーで最大 4KB) 、保存できるセッション情報を制限する必要があります。セッション情報を複数の Cookie に分割することも可能ですが、推奨しません。
- 削除できるレコードがデータベースに存在しないため、セッションの失効が難しくなります。セッションを強制的にクリアするには、別の方法が必要です。
- 複数の Web サーバーを使用する場合は、すべてのサーバーが Cookie の暗号化/復号や署名に必要な鍵を持っていることを確認する必要があります。